![](/img/trans.png)
[英]How can I run NodeJS and Apache together with an Apache virtual host file on Centos8?
[英]How can I run both nginx and Apache together on Ubuntu?
我想將 Apache 和 nginx 配置為在 Ubuntu 上一起運行,因為我想在 nginx 和 Apache 上進行開發。 我讀過我必須在 Apache 或 nginx 上編輯配置,以使其中一個在另一個端口而不是 80 上運行。
我應該在 Nginx 中編輯哪些文件以使其通過另一個端口運行?
轉到/etc/nginx/sites-available
然后修改應該偵聽不同端口的主機文件(如果您沒有在這里更改任何內容,您會找到一個default
文件,輸入更改它)
在文件中將listen: 80
改為你要監聽的端口
不要忘記重新加載服務: service nginx reload
最好讓apache
在不同的端口上偵聽並指示nginx
在nginx
提供靜態文件的同時將動態流量反向代理到您的apache
。
對於/etc/apache2/ports.conf
中的 apache,包括:
Listen 8080
有關詳細信息,請參閱: https ://serverfault.com/questions/92943/server-has-apache-installed-how-to-install-nginx-alongside-it
假設您同時安裝了 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 端口做同樣的事情。
重要的!
確保所有啟用的 NGINX 網站都在 nginx:80 上偵聽
重啟 NGINX
sudo service nginx restart
使用命令sudo netstat -tulpn | grep :80
進行檢查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 端口做同樣的事情。
重要的!
確保所有啟用的 Apache 網站都在 apache:80 上監聽
重啟阿帕奇
sudo service apache2 restart
使用命令sudo netstat -tulpn | grep :80
進行檢查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 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 在port 80
上運行,那么您必須更改 apache 偵聽端口或 nginx 偵聽端口。
更改 nginx 監聽端口:
使用 nano 或您選擇的任何文件編輯器打開/etc/nginx/sites-available/default
文件,然后更改這兩行
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
至
listen 8000 default_server;
listen [::]:8000 default_server ipv6only=on;
如果port 8000
未綁定到任何其他服務。
然后使用service nginx reload
加載 nginx
我通過更改 apache ports.conf 文件中的端口解決了這個問題
您可以通過以下方式對其進行編輯:
sudo nano /etc/apache2/ports.conf
如果您想更改 nginx 的端口,則只需在站點可用的文件中更改它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.