當前位置: 首頁>>技術教程>>正文


如何在Ubuntu上同時運行nginx和Apache?

, ,

問題描述

我想將Apache和nginx都配置為在Ubuntu上一起運行,因為我想同時在nginx和Apache上進行開發。我讀到我必須在Apache或nginx上編輯配置,以使其中一個在另一個端口而不是80上運行。

我應該在Nginx中編輯哪些文件以使其通過另一個端口運行?

最佳答案

轉到/etc/nginx/sites-available,然後修改應偵聽其他端口的主機文件(如果您在此處未進行任何更改,則會找到default文件,請輸入以進行更改)

在文件中,將listen: 80更改為您要收聽的端口

別忘了重新加載服務:service nginx reload

次佳答案

最好移動apache在不同的端口上偵聽,並在nginx服務/static /時指示nginx將reverse-proxy動態流量發送到您的apache。

對於/etc/apache2/ports.conf中的apache,包括:

Listen 8080

有關其他信息,請參考:https://serverfault.com/questions/92943/server-has-apache-installed-how-to-install-nginx-alongside-it

第三種答案

所以我遇到了類似的問題,我在Ubuntu 14.04上運行了Apache,並且必須與Apache一起安裝nginx,因此在安裝nginx之後,我將ngnix服務器的偵聽端口從默認80更改為81,它的確遵循以下說明進行了操作:實現這一目標

cd /etc/nginx/sites-available
sudo cp default default.bak
sudo nano default

在此更改端口。

server {
listen 81 default_server;
listen [::]:81 default_server ipv6only=on;

保存並退出nano,然後重新啟動ngnix

sudo service nginx restart

在瀏覽器http://localhost:81中,您的服務器已啟動

`

第四種答案

這是如何將Apache和NGINX都安裝在同一80端口(在本地主機上)的答案。

假設您同時安裝了NGINX和Apache …

1.為每個選擇不同的IP地址。

讓我們設置hosts文件以快速訪問起始頁。

sudo nano /etc/hosts

附加行(使用您喜歡的任何本地IP)

127.0.0.1   nginx
127.0.0.2   apache

2.為NGINX設置監聽IP和端口

NGINX必須僅偵聽一個IP地址。

sudo nano /etc/nginx/sites-enabled/default

並更換線

—(刪除行)+++(添加行)

--- listen 80 default_server;
--- listen [::]:80 default_server;
+++ listen nginx:80;

如果要使用SSL,請對443端口進行相同的設置。

IMPORTANT!

Make sure all enabled NGINX websites listen on nginx:80

重新啟動NGINX

sudo service nginx restart

使用命令sudo netstat -tulpn | grep :80進行檢查

tcp        0      0 127.0.0.1:80            0.0.0.0:*               LISTEN      26540/nginx: master

做完了!現在您可以通過URL http://nginx訪問默認的NGINX主機

3.設置Apache的偵聽IP和端口

Apache也必須僅偵聽一個IP地址。

端口:

sudo nano /etc/apache2/ports.conf

並更換線

—(刪除行)+++(添加行)

--- Listen 80
--- Listen 443
+++ Listen apache:80
+++ Listen apache:443

默認虛擬主機:

sudo nano /etc/apache/sites-enabled/000-default

並更換線

—(刪除行)+++(添加行)

--- <VirtualHost *:80>
+++ <VirtualHost apache:80>

如果要使用SSL,請對443端口進行相同的設置。

IMPORTANT!

Make sure all enabled Apache websites listen on apache:80

重新啟動Apache

sudo service apache2 restart

使用命令sudo netstat -tulpn | grep :80進行檢查

tcp        0      0 127.0.0.2:80            0.0.0.0:*               LISTEN      26829/apache2

做完了!現在您可以通過URL http://apache訪問默認的Apache主機

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/10652.html,未經允許,請勿轉載。