我正在尝试通过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,不应该在那里。删除它解决了这个问题。
答案 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)
我检查并修复了以下内容并将其解决了 -
/etc/httpd/conf/
10.12.13.4:80
答案 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的多个副本-应该只有一个。