首頁 > 軟體

Nginx新增ipv6模組以及遇到問題解決方案詳解(親測有效)

2022-09-14 22:13:48

1、檢查nginx是否已經包含ipv6模組

nginx -V

輸出結果如果沒有 ipv6則不支援,如果支援ipv6,則輸出結果會包含 “--with-ipv6”。

如果不支援ipv6則需要上傳Nginx包,進入目錄,進行重新編譯(注意使用者組預設是www,可以到etc下的組態檔檢查具體使用者組)

( 新增使用者組命令:/usr/sbin/groupadd -f www     /usr/sbin/useradd -g www www )

進入目錄,進行重新編譯命令:

./configure --user=nginx --group=nginx--prefix=/usr --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module --with-ipv6

2、編譯完畢後,會在當前目錄下建立objs目錄,新的nginx執行檔案將生成在該目錄中

3、替換nginx執行檔案(做好備份,如果失敗還原)

cp /usr/sbin/nginx /usr/sbin/nginx.bak

4、停止nginx這裡必須停止nginx,否則無法覆蓋的!

service nginx stop

5、覆蓋nginx執行檔案

cp nginx /usr/nginx/sbin/nginx

6、檢查組態檔

nginx -t

7、檢查版本

Nginx -V

8、啟動nginx

service nginx start

 9、檢查監聽是否已成功

(要去etc/下組態檔新增IPV6 的埠例如

        listen       80;
        listen       [::]:80 ipv6only=on;
        listen       443;
        listen       [::]:443 ipv6only=on;
)

如果檢查埠起來,那麼IPV6模組新增成功

如果成功一下可以忽略

如果報錯以下是解決方案可以參考

1、nginx啟動提示nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

vim /etc/sysconfig/iptables

開啟後,預設的設定資訊如下(新新增兩個):

-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

重啟Nginx

systemctl restart nginx.service

2、如果報缺少庫則需要安裝對應的如下庫

yum install -y zlib-devel
yum install -y pcre-devel
yum install -y openssl openssl-devel

3、如果報錯xx檔案找不到需要到指定目錄建立資料夾和對應的檔案

在usr/新建夾logs(資料夾先對應三個檔案主要是error。log檔案) 、conf (把組態檔etc/nginx 複製 /usr/conf)然後在操作。

總結

到此這篇關於Nginx新增ipv6模組以及遇到問題解決方案的文章就介紹到這了,更多相關Nginx新增ipv6模組內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com