国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Apache > 正文

詳解Nginx與Apache共用80端口的配置方法

2024-08-27 18:24:42
字體:
來源:轉載
供稿:網友

一個典型的 Nginx + Apache 應用方案可以是Nginx 占用 80 端口,過濾靜態請求,然后動態請求即 Proxy 到 Apache 的 8080 端口。Proxy 反向代理的好處是訪問的時候,始終就是 80 端口,來訪者不會覺察到有任何的區別。

但有的應用確非常“聰明”,識別到 Apache 所位于的端口是 8080 ,就會把相關的超鏈接都一并加上 :8080 的后續。這么就死定了,還能有正常訪問麼?!

有個方法可以解決這事,就是把 apache 也運行在80端口上。同一臺服務器,有Nginx 也有 Apache,2個httpd服務,都是80,不會沖突麼?

下邊就是舉例方法。
Nginx.conf 的配置中

server { listen 80; server_name www.webyang.net;}

修改一下。

server { listen 192.168.3.3:80;  #指定Nginx只占用某個IP的80端口。 listen 192.168.10.3:80;  #如果你服務器中有多個IP,還可以指定多個。 server_name www.webyang.net;}

如果你在Nginx有多個虛擬主機,每一個都需要這么修改。

然后輪到 apache 的 httpd.conf
把原來的

Listen 80

改為

Listen 127.0.0.1:80

跟Nginx一樣,指定apache所占用的IP及端口。
保存退出,重啟apache即可生效。
如果你 apache 上也有多個虛擬主機。無需好像Nginx那樣逐一修改,只要都是 80 端口既可。

如:

NameVirtualHost *:80<VirtualHost *:80> ServerAdmin hello@abc.com DocumentRoot /data/web_server/admin ServerName www.webyang.net</VirtualHost>

這樣你是不是以為,就已經萬事大吉了?非也。

這樣的apache只能通過http://127.0.0.1:80才能訪問,那么他還占用80端口就沒有意義了。還不如apache用8080,nginx用80算了。
所以此時如果你的服務器有多ip,除了把apache綁定在 127.0.0.1 還能綁定另外一張網卡的IP,那么問題就解決。

可是一般人都是只有一個獨立ip的,所以這種方法對很多人來講就是海市蜃樓。
修改一種思路,apache還是8080端口,修改其中的一個nginx的域名的conf文件

location / { try_files $uri @apache;} location @apache { internal; proxy_pass http://127.0.0.1:8080;} location ~ .*.(php|php5)?$ { proxy_pass http://127.0.0.1:8080;}

此時,該域名全部動作都走Apache了,包括靜態文件。

也有很多人下面這種寫法:

upstream zend { server 127.0.0.1:8080;} location / { proxy_pass  http://zend; 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_set_header   X-Scheme $scheme;} location ~ .*.(php|php5)?$ { proxy_pass  http://zend; 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_set_header   X-Scheme $scheme;}

大體類似。

Nginx的端口修改
修改 nginx.conf 文件實現。在 Linux 上該文件的路徑為 /usr/local/nginx/conf/nginx.conf,Windows 下 安裝目錄/conf/nginx.conf。

server { listen  80; server_name localhost;  ……}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南靖县| 儋州市| 登封市| 横峰县| 甘洛县| 长岛县| 镇巴县| 额敏县| 中宁县| 潼关县| 开阳县| 迭部县| 芜湖县| 长沙县| 吴江市| 兴海县| 肥乡县| 临颍县| 东城区| 五家渠市| 浦东新区| 潮州市| 曲松县| 东兰县| 清涧县| 砚山县| 崇礼县| 泸定县| 界首市| 集安市| 依安县| 特克斯县| 绵阳市| 延川县| 正定县| 宁津县| 华蓥市| 东兴市| 顺平县| 林甸县| 玛纳斯县|