wordpress and node.js

2019-03-19 02:47发布

Is it possible to install wordpress and node.js server on same server maschine and use wordpress mysql database also from node.js? Also is it possible to have noSql also installed on thah server to use with node.js? I want to use wordpress for frontend for my portal, but all asynchronous work to do with node.js and reading some data from wordpress mysql and writing some to noSql. Can someone please help me with steps how to achive this for testing purposes.

Thank you for your time and best regards!

3条回答
女痞
2楼-- · 2019-03-19 02:59

If you're planning on using node for being accessed asynchronously by JavaScript that's being served by wordpress, then it will make your life considerably easier to have them running on the same host and port. What I've done in the past is set up the following:

  1. Apache + PHP + Wordpress running on some port (8000?)
  2. Node + npm + ever other package you'll want running on some other port (9000?)
  3. HAProxy with some rules listening on port 80 which will decide based on the path which of the two servers to send requests to.
  4. A normal installation of MySQL and whichever NoSQL DB you pick.

Recent versions of HAProxy can also terminate SSL, if you want to do the same with HTTPS on port 443.

Here's a sample HAProxy configuration:

defaults
  log global
  maxconn 4096
  mode http
  option http-server-close
  timeout connect 5s
  timeout client 30s
  timeout server 30s

frontend public
  # HTTP
  bind :80
  use_backend node if { path_beg /services }
  # Everything else to Apache.
  default_backend apache

backend node
  server node1 127.0.0.1:9000

backend apache
  server apache1 127.0.0.1:8000
查看更多
家丑人穷心不美
3楼-- · 2019-03-19 03:15

Yes it's possible, try express-php-fpm package.

You can use WordPress as backend only and Node.js for frontend.

查看更多
Luminary・发光体
4楼-- · 2019-03-19 03:23

Right, it's possible. The only catch is that Apache (running Wordpress) and Node.JS can't bind to the same port. In other words, you'll need to have Wordpress running on port 8080 and Node running on 80 (or other different ports).

  1. Install Apache, PHP, Node, NPM, MySQL, NoSQL...
  2. Configure Apache to listen on the desired port. (8080?)
  3. Install Wordpress & Start Apache.
  4. Start your Node application.

As for the precise steps involved to install those services, there are hundreds of guides online.

查看更多
登录 后发表回答