" make_sock:无法绑定到地址[::]:443"重启apache时(安装trac和mod_wsgi)

时间:2012-02-04 19:47:24

标签: apache ubuntu mod-wsgi trac

我正在尝试通过SSL安装trac和mod_wsgi。我试图手动安装它,但是效果不好,所以我开始遵循这个:trac-on-ubuntu

我跳过了svn部分,因为我想改用git。在第一次编辑httpd.conf之后:

WSGIScriptAlias /trac /var/trac/apache/trac.wsgi

<Directory /var/trac/apache>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
</Directory>

我重新启动apache只是为了得到这个错误:

* Restarting web server apache2                                                    

(98)Address already in use: make_sock: could not bind to address [::]:443

                                                                     [ OK ]

这些都没有表现出来。

 netstat -anp | grep 443 
 fuser 443/tcp

除了我运行的grep命令之外,这样做没有产生任何结果:

ps -aux | grep httpd

为什么在没有任何东西出现时说其他东西正在使用该端口?

编辑:你们会嘲笑这个。我在ports.conf中有一个额外的Listen 443,不应该在那里。删除它解决了这个问题。

13 个答案:

答案 0 :(得分:206)

你们会笑这个。我在ports.conf中有一个额外的Listen 443,不应该在那里。删除它解决了这个问题。

答案 1 :(得分:14)

我正在为此添加另一个答案,因为我遇到了同样的问题并以同样的方式解决了它: 我使用a2enmod ssl在apache2上安装了SSL,这似乎在/etc/apache2/ports.conf中添加了额外的配置:

NameVirtualHost *:80
Listen 80

NameVirtualHost *:443
Listen 443

<IfModule mod_ssl.c>
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

我必须在Listen 443指令之后注释掉第一个NameVirtualHost *:443

NameVirtualHost *:443
#Listen 443

但我想我也可以让它评论其他人。 无论如何,谢谢你的解决方案:)

答案 2 :(得分:10)

感谢您的答案,如果已经使用yum命令安装了ssl_module,则在apache 2.4.x版本上,不想在httpd.conf(main)文件中添加端口:443

要查找配置文件中的端口443,

# grep '443' /etc/httpd/conf.d/*

/etc/httpd/conf.d/ssl.conf:Listen 443 https
/etc/httpd/conf.d/ssl.conf:<VirtualHost _default_:443>
/etc/httpd/conf.d/ssl.conf:#ServerName www.example.com:443

# grep '443' /etc/httpd/conf/httpd.conf 
Listen 443

只需从 httpd.conf 文件中删除该行或命令(Listen 443)。

答案 3 :(得分:4)

对于其他没有重复监听指令且端口上没有正在运行的进程的人:检查你是否在apache2.conf中不小心包含了ports.conf两次(正如我做的那样,由于合并错误)。 / p>

答案 4 :(得分:1)

我使用apache版本2.4.27,也有这个问题,通过修改解决了它

conf / extra / httpdahssl.conf,评论18行内容(Listen 443 https),它运行正常。

答案 5 :(得分:0)

我正在使用Ubuntu。我只是禁用了apache2的ssl模式,它对我有用。

a2dismod ssl

然后重新启动apache2。

service apache2 restart

答案 6 :(得分:0)

我检查并修复了以下内容并将其解决了 -

  1. /etc/httpd/conf/
  2. 上的httpd.conf文件
  3. 检查了收听IP和端口,例如10.12.13.4:80
  4. 删除了额外的侦听端口
  5. 重新启动httpd服务

答案 7 :(得分:0)

当我启动XAMPP时,我遇到了windows7中的问题,phpeclipse。 我的解决方案是:

  • 1.注释掉\ xampp \ apache \ conf \ httpd.conf - &gt; line171 - &gt; #LoadModule ssl_module modules / mod_ssl.so

  • 2.line539 - &gt; #Include conf / extra / httpd-ssl.conf

或者您可以将443端口更改为另一个端口

答案 8 :(得分:0)

我借调了Matthieu的回答

我在httpd-ssl文件中评论了#Listen 443,并且可以启动apache

因为该文件已经具有VirtualHost 默认:443

答案 9 :(得分:0)

在httpd.conf中改为:

Listen *:443

你需要写Listen 127.0.0.1:443 它对我有用。

答案 10 :(得分:0)

我错误地在/etc/httpd/conf.d目录中错误地命名了备份文件。在自述文件中,它声明它按字母顺序遍历所有.conf文件。

我创建了ssl-&lt; date &gt; .conf(意味着是备份),它在ssl.conf之前加载。它基于ssl-&lt; date &gt; .conf绑定了:443端口,并且在ssl.conf上失败。

将备份文件重命名为ssl.conf。&lt; date &gt;后,服务就开始没有问题。

请注意,我所使用的服务器正在运行RHEL 6

答案 11 :(得分:0)

让我再添加一个错误原因。在httpd.conf中,我明确包含了

Include etc/apache24/extra/httpd-ssl.conf

虽然没有注意到以前的通配符

Include etc/apache24/extra/*.conf

Grepping 443找不到它。

答案 12 :(得分:0)

我遇到了同样的问题,这是由于/etc/httpd/conf.d中ssl.conf的多个副本-应该只有一个。