Nginx(代理)+Tomcat(Java)+Apache(PHP)共用80端口

解决的核心问题是:使用一个80端口,根据域名或者子域名 同时访问java + php运行环境

1.下载nginx

官网下载链接:http://nginx.org/en/download.html   接下来我以nginx/Windows-1.16.0

nginx-1.16.0.zip下载链接如下:https://pan.baidu.com/s/1IqL1g7134Qd4Cjoq1d4lBQ

下载后解压,解压后如下

2.nginx的运用

有很多种方法启动nginx

(1)直接双击解压文件夹里的nginx.exe,双击后一个黑色的弹窗一闪而过,证明启动成功

(2)打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe 或者 start nginx ,回车即可;

常用命令如下:

1. 快速停止或关闭:nginx -s stop

2. 正常停止或关闭:nginx -s quit

3. 配置文件修改重装载命令:nginx -s reload

检查nginx是否启动成功:

cmd命令窗口输入命令:tasklist /fi "imagename eq nginx.exe" 出现如下结果说明启动成功

 

3.nginx代理设置

①修改要用到的配置文件

       ..\nginx-1.16.0\conf\nginx.conf

Java

 

代码如下:

       upstream java{

              server 127.0.0.1:8080 weight=1;

       }

       server {

        listen       80;

        server_name  www.java.com;

              location / {

                     proxy_pass   http://java;

                     proxy_set_header Host $host;

                     proxy_set_header X-Real-IP $remote_addr;

                     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                    

              }

       }

PHP

 

代码如下:

       upstream php{

              server 127.0.0.1:808 weight=1;

       }

      

    server {

        listen       80;

        server_name  www.php.com;

              location / {

                     proxy_pass   http://php;

                     proxy_set_header Host $host;

                     proxy_set_header X-Real-IP $remote_addr;

                     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                    

              }

       }

②Tomcat : ..\apache-tomcat-7.0.64\conf\server.xml

默认端口为8080

③Apache: ..\Apache24\conf\httpd.conf

Listen 80 改 Listen 808

④Hosts : C:\Windows\System32\drivers\etc\HOSTS

增加两行数据

127.0.0.1 www.java.com

127.0.0.1 www.php.com

重新启动Tomcat/Apache/nginx

 

最后访问:

www.java.com 会进入 8080端口的Tomcat 环境

www.php.com 会进入 808 端口的 Apache 环境

猜你喜欢

转载自www.cnblogs.com/ArvinSnow/p/11304246.html
今日推荐