AcShop的gravatar头像
AcShop 2014-08-13 18:30:41

想在一个服务器上同时运行php和java web程序,并使用不同的域名访问80端口,谁能提供最好的技术呢?高分求给力

想在一个服务器上同时运行php和java web程序,并使用不同的ip访问80端口

我自己之前用过nginx配置访问两台服务器上不同IP地址的tomcat程序,但是还没在一个服务器上搞过我说的这种要访问php、还要访问java web的配置。

php使用apache作为服务器;

java web使用 tomcat作为容器,当然肯定还是以apache作为服务器;

网上有讲解说使用Apache+Tomcat整合并配置虚拟主机来访问同一服务器上的不同应用,但是讲解没那么细致,导致我没理解过来###

要不难道要使用nginx + apache + tomcat? 不知道哪位前辈做过,如果没做过,您是否考虑过这种情况呢?

是否您能给出最给力的答案呢?高分求最真实的回答,谢谢大家!!!

所有回答列表(5)
linapex的gravatar头像
linapex  LV14 2014年8月14日

看着!最简单的方式!既然你用过nginx,那我们就用这种方式来解决。

原理:配置代理.

1.开启 php + apache 占用808端口,为程序入口

2.开启 tomcat ,修改端口为8080,为程序入口

3.开启 nginx 占用80端口,为请求总入口,以请求路径进行区分.

如:www.test.com 则是通过nginx代理访问 php 808入口,www.test.com/java ,则是通过nginx代理访问 tomcat 8080端口.

 

nginx 配置文件:

 

upstream app_server{  
        server 127.0.0.1:808;
    }

upstream java_server{  
        server 127.0.0.1:8080;
    }

    location / 
    {
          index index.php index.html index.htm;
          proxy_redirect off;
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
              proxy_pass http://app_server;
     }

 

 location /java
    {
          index index.jsp index.html index.htm;
          proxy_redirect off;
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
              proxy_pass http://java_server;
     }

评论(5) 最佳答案
最代码官方的gravatar头像
最代码官方  LV167 2014年8月13日

90牛币高分悬赏,这是真土豪。

先问你2个问题:

1.为什么一台服务器要用2个ip呢?

2.为什么php和java的请求只能通过端口来区分呢?

给你我的解决方案:

这台服务器对外肯定只有一个ip,对外只开放前端负载均衡nginx 80端口,php和java的程序通过域名或者后缀让nginx把请求转发给后端服务,apache或tomcat。

不同域名:

java.xxx.com/a.jsp

php.xxx.com/a.php

不同后缀

xxx.com/java.jsp

xxx.com/php.php

nginx的配置网站一大把,你自己解决下吧。

limtno的gravatar头像
limtno  LV23 2014年8月13日

标准土豪。。

amourlive的gravatar头像
amourlive  LV5 2014年8月13日

1、单网卡,配置2个IP地址,1个PHP监听1个IP的80端口,javaweb监听另一个IP的80端口。

2、双网卡一样的,配置2个IP地址。

3、虚拟机,加个系统,配独立IP即可。

kangkaime的gravatar头像
kangkaime  LV2 2014年8月18日

nginx 代理转发

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友