首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx:[emerg] bind() to [::]:80失败(98:地址已在使用)

问nginx:[emerg] bind() to [::]:80失败(98:地址已在使用)
EN

Stack Overflow用户
提问于 2013-08-02 17:12:04
回答 2查看 2.2K关注 0票数 1

大家好,正在尝试使用nginx和php5-fpm配置我的fpm服务器。

当我尝试重新启动/start/stop nginx时,它显示:

代码语言:javascript
复制
Restarting nginx: 
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
nginx.

日志显示了同样的情况。

我的站点配置:

代码语言:javascript
复制
server {

            listen   80;

            listen   [::]:80;

            root /home/marker/Projects/stereoshoots/www;

            server_name stereoshoots.local;







            location / {

                    autoindex  on;

    #                try_files $uri $uri/ @rewrite;

                    try_files $uri $uri/ /index.php;

            }

    #        location @rewrite {

    #                rewrite ^/(.*)$ /index.php?q=$1;

    #        }

            location ~* \.(jpg|jpeg|gif|css|png|js|ico|xml|txt)$ {

                access_log        off;

                expires           30d;

            }

            location = /favicon.ico {

                    return 204;

                    access_log     off;

                    log_not_found  off;

            }

            location ~ \.php$ {

                    fastcgi_pass unix:/var/run/php5-fpm.sock;

                    fastcgi_index index.php;

                    include fastcgi_params;

            }

            location ~ /\.ht {

                    deny all;

            }

    }

我在安装nginx+php5-fpm时在终端中编写的命令列表

代码语言:javascript
复制
1.sudo apt-get install nginx
2.sudo apt-get install php5-cli php5-common php5-mysql php5-suhosin php5-gd php5-fpm php5-cgi php5-fpm php-pear php5-mcrypt
3.sudo service nginx stop
4.sudo service php5-fpm stop
5.sudo gedit /etc/php5/fpm/php.ini
cgi.fix_pathinfo = 0;
6.sudo gedit /etc/php5/fpm/pool.d/www.conf
security.limit_extensions = .php .php3 .php4 .php5
listen = /var/run/php5-fpm.sock
EN

回答 2

Stack Overflow用户

发布于 2016-08-05 12:19:06

如果你想同时支持ipv4和ipv6(你应该这样做,因为像苹果这样的公司已经迁移到了纯IPV6的网络,2016.8 ),你需要删除listen 80,只在你的nginx配置中保留以下内容。

代码语言:javascript
复制
listen [::]:80

可能还有这个,

代码语言:javascript
复制
listen [::]:443

请记住,您需要将配置中的所有listen 80,listen 443更改为listen [::]:80,listen [::]:443。别忘了/etc/nginx/sites-available/default中的配置

票数 1
EN

Stack Overflow用户

发布于 2013-08-03 03:39:07

默认情况下,Skype使用端口80,443,这些端口正是http和https端口。尝试关闭skype并重启nginx。

如果你使用的是Skype的“桌面版”,你可以通过tools>options>advanced>connections > untick use port 80 and 443 as alternatives的方式改变这个设置。

如果你正在使用skype应用程序,唯一的选择似乎是完全关闭win8或完全删除它。

但是,必须有人确认win8应用程序,我使用的是linux。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18013023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档