nginx ผิดพลาดมันไม่เปิด


9

ได้โปรด nginx ในเซิร์ฟเวอร์ของฉันเริ่มต้นโปรดติดตามฉัน

root@s45-****:/home/arabico# nmap 45.****

PORT   STATE SERVICE
22/tcp open  ssh
5/tcp open  smtp
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds
root@s45-****:/home/arabico# sudo service apache2 stop
 * Stopping web server apache2                                                      * 
root@s45-****:/home/arabico# nmap 45.****

Starting Nmap 6.40 ( http://nmap.org ) at 2015-06-05 19:33 MST

PORT   STATE SERVICE
22/tcp open  ssh
25/tcp open  smtp

Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds
root@s45-***:/home/arabico# sudo service nginx restart
 * Restarting nginx nginx          
          [fail] 


root@s45-***:/home/arabico# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
nginx: configuration file /etc/nginx/nginx.conf test failed

root@s45***:/home/arabico# sudo nginx
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)

โปรดให้มันเริ่มได้อย่างไร


คุณจะถามอะไรกันแน่
spacegeek224

มันทำงาน didn'y วิธีการที่จะปล่อยให้มันเริ่มต้น
user14576

คำตอบ:


11
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)

จากข้อความแสดงข้อผิดพลาดดูเหมือนว่า ipv6 ถูกปิดใช้งานบนเซิร์ฟเวอร์ของคุณ แก้ไขการกำหนดค่าเซิร์ฟเวอร์เริ่มต้น nginx และเปลี่ยนเป็นการฟังบน ipv4 เท่านั้นหรือเปิดใช้งาน ipv6

listen 80 default_server;
# comment to disable ipv6
# listen [::]:80 default_server;

7

ฉันแค่ลบบรรทัดนี้

Listen [::]: 80 default_server ipv6only = เปิด;

จาก

/ etc / nginx / sites-available / default และใช้งานได้: D


ฉันทำแบบเดียวกันและมันก็ใช้งานได้ แต่ทุกคนสามารถอธิบายได้ว่าทำไมการกำหนดค่าเริ่มต้นไม่ทำงาน
Loredra L

0

ขอขอบคุณสำหรับการกล่าวขวัญ IPv6

ในกรณีของฉันฉันได้รับบรรทัดใน nginx conf จาก

proxy_pass http://localhost:3028/;

ปัญหาเกิดขึ้นเมื่อฉันปิดการใช้งาน ipv6 ในการกำหนดค่าเคอร์เนล การเปิดใช้งาน ipv6 ใหม่สามารถแก้ปัญหาได้ แต่ไม่ใช่สิ่งที่ฉันต้องการ

ทางออกคือการลบ

::1     localhost ip6-localhost ip6-loopback
ff02::1     ip6-allnodes
ff02::2     ip6-allrouters

/etc/hostsใน

ดังนั้น localhost เสมอจะเป็นไปตามเป้าหมาย IPv4 127.0.0.1เริ่มต้นซึ่งเป็น

เพียงแค่ลบ::1บรรทัดอาจเพียงพอ เนื่องจาก IPv6 ถูกปิดใช้งานโดยสิ้นเชิงผมจะลบทั้งหมดของพวกเขา

การเปลี่ยนการกำหนดค่าlocalhostใน nginx เป็น127.0.0.1อาจแก้ไขปัญหานี้ได้เช่นกัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.