Прокси-сервер Apache для узла.js и Wordpress на одном "домене" , но разными путями
Вот в чем дело.
У меня есть сайт Wordpress, работающий на моем основном домене say http://www.example.com
.
.htaccess
включен на сервере, и я использую WordPress permalinks для генерации красивых URL-адресов.
Теперь у меня есть другое приложение в узле.JS (Express), который я развернул на том же сервере и работает под номером порта 3000
. Поэтому, если я ставлю http://www.example.com:3000
, он запускает мое приложение Expressjs. и он работает безупречно.
Я хочу запустить узел.JS приложение на определенном пути от тот же домен. Например, если я нажму, http://www.example.com/node
это должно привести пользователя к моему узлу.JS приложение, которое он принимает довольно хорошо, если я использую Apache mod_proxy
. Но это работает только для маршрута /
моего маршрутизатора Expressjs.
Но у меня есть и несколько других маршрутов./subscribe
, /confirm
но ни один из них не работает.
Ниже приведена моя конфигурация Apache, которую я пытался заставить работать, давая несколько директив ProxyPass
, но она не работает.
ProxyPass /node http://127.0.0.1:3000/
ProxyPassReverse /node http://127.0.0.1:3000/
ProxyPass /node/subscribe http://127.0.0.1:3000/subscribe
ProxyPassReverse /node/subscribe http://127.0.0.1:3000/subscribe
Экспресс-маршрутизатор довольно прост и использует следующее приложение конфигурация:
var router = express.Router();
app.use("/",router);
router.get("/",function(req,res){
res.sendFile(templatepath + "index.html");
});
router.get("/subscribe",function(req,res){
res.sendFile(templatepath + "subscribe.html");
});
router.get("*",function(req,res){
res.sendFile(templatepath + "404.html");
});
Когда я пытаюсь загрузить http://www.example.com/node/subscribe
, он просто загружает маршрут *
и отображает шаблон 404.html
.