启动nginx报错,80 failed (97: Address family not supported by protocol)
<p>本文已收录在Github,<strong>关注我,紧跟本系列专栏文章,咱们下篇再续!</strong></p><ul>
<li>🚀 魔都架构师 | 全网30W技术追随者</li>
<li>🔧 大厂分布式系统/数据中台实战专家</li>
<li>🏆 主导交易系统百万级流量调优 & 车联网平台架构</li>
<li>🧠 AIGC应用开发先行者 | 区块链落地实践者</li>
<li>🌍 以技术驱动创新,我们的征途是改变世界!</li>
<li>👉 实战干货:编程严选网</li>
</ul>
<h2 id="1-安装nginx">1 安装Nginx</h2>
<p>最近想使用云服务器来部署自己的web应用。</p>
<pre><code class="language-bash">yum install nginx
</code></pre>
<h2 id="2-尝试启动nginx">2 尝试启动Nginx</h2>
<p>安装nginx后,用命令service nginx start 启动时报错:</p>
<pre><code class="language-bash"># sudo service nginx start
Starting nginx: nginx: socket() [:]:80 failed (97: Address family not supported by protocol)
</code></pre>
<p>错误表明Nginx在尝试监听80端口时遇到了问题。Address family not supported by protocol,通常与IPv6相关。</p>
<h2 id="3-定位问题源">3 定位问题源</h2>
<p>找到nginx的默认配置文件:</p>
<pre><code class="language-sql">vim /etc/nginx/conf.d/default.conf
</code></pre>
<pre><code class="language-sql">#
# The default server
#
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name_;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
</code></pre>
<p>配置文件包含6、7两行关于监听80端口的指令,其中<code>listen [::]:80 default_server;</code>是用于监听IPv6的。</p>
<p>将如下部分注释:</p>
<pre><code class="language-bash">listen [::]:80 default_server;
</code></pre>
<p>因为错误提示可能与服务器不支持IPv6或者Nginx配置了监听IPv6但实际环境不支持有关。注释后,Nginx将不再尝试监听IPv6地址。</p>
<h2 id="4-重启nginx">4 重启Nginx</h2>
<p>重启,成功!</p>
<pre><code class="language-bash"># sudo service nginx start
Starting nginx: [ OK ]
</code></pre>
<blockquote>
<p>本文由博客一文多发平台 OpenWrite 发布!</p>
</blockquote><br><br>
来源:https://www.cnblogs.com/JavaEdge/p/18849346
頁:
[1]