我有两个Web应用程序,一个使用PHP,一个使用Java(Play框架)。在同一主机上设置PHP和Java应用程序的最佳方法
我想使这两个应用程序都可用于我的客户端,并且我只有一台服务器用于测试环境。
对于我的问题,最好和容易维护的方法是什么?
我已经在寻找Apache服务器上虚拟主机的选项。但是最好的?有没有第三方工具可以帮助我根据http请求中的端口将流量转移到PHP和Java应用程序?
端口号为PHP应用程序是80和Java应用程序是9000
问候, 苏拉杰
我有两个Web应用程序,一个使用PHP,一个使用Java(Play框架)。在同一主机上设置PHP和Java应用程序的最佳方法
我想使这两个应用程序都可用于我的客户端,并且我只有一台服务器用于测试环境。
对于我的问题,最好和容易维护的方法是什么?
我已经在寻找Apache服务器上虚拟主机的选项。但是最好的?有没有第三方工具可以帮助我根据http请求中的端口将流量转移到PHP和Java应用程序?
端口号为PHP应用程序是80和Java应用程序是9000
问候, 苏拉杰
感谢您的评论。
是的,我做了同样的事情。我只是将我的域名指向Apache Http服务器。所以它使用默认的端口80,并不会显示在网址中。
此外,我使用Apache作为前端服务器,用于端口9000的所有请求。因此,我通过Apache端口80重新路由了我在端口9000上播放应用程序的请求。它需要更改网址格式,以便播放和可以区分apache特定的URL。
更改了网址并使用了proxy_http_module + ProxyPassMatch指令来获取重新路由工作。
Suraj
假设两个端口都正确转发和Apache只能监听通信的端口80和Java是只听然后去YourIp:80应该带你到Apache和YourIP:9000应该带你到Java应用程序
对于PHP应用程序创建常见的虚拟主机作为usally,并为Play应用程序创建反向代理虚拟主机(与其他域和/或子域) ,看看samples in docs
LoadModule proxy_module modules/mod_proxy.so
...
<VirtualHost *:80>
DocumentRoot "/path/to/your/php/app/root/folder/"
ServerName your-php-app.com
ErrorLog "/path/to/apache/logs/folder/your-php-app.com-error_log"
CustomLog "/path/to/apache/logs/folder/your-php-app.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ProxyPreserveHost On
ServerName your-play-app.com
ProxyPass /excluded !
ProxyPass/http://127.0.0.1:9000/
ProxyPassReverse/http://127.0.0.1:9000/
</VirtualHost>
对于我的PHP和Java应用程序,域名是一样的,只有端口号是不同的,所以PHP(Apache)在www.mydomain.com:80上监听,而Java框架在www.mydomain.com:9000上监听。控制器和操作的其他路径是不同的,例如:www.mydomain.com:80/customer/profile和www.mydomain.com:9000/api/order。如何在Apache中配置虚拟主机以接收www.mydomain的流量。 com:9000/api /命令在端口80并将它路由到我的Java应用程序在端口9000? – Suraj 2014-09-26 08:14:04
目标是使两个应用程序侦听端口80,并根据控制器/操作将流量路由到相应的应用程序,以便端口号9000可以已经从...删除Java应用程序的网址。 – Suraj 2014-09-26 08:22:54
我不想在我的网址中使用端口号。 – Suraj 2014-09-24 06:14:26
当你设置一个域名时,你可以将它指向IP:端口号 ,例如131.23.141.12:80,因此一旦域“www.MyDomain.com被指向端口,你将不会在你的url中看到端口号 – 2014-10-13 13:31:45