Apache2で仮想ホストを使用して複数のドメインを設定しようとしています。現在、サイトを参照しようとすると「接続できませんでした」というエラーが発生します。Apache2を再起動しようとすると、「リスニングソケットがありません。ログを開くことができません。シャットダウンしています」というエラーが表示されます。
元々、Apache2.confと/Apache2/sites-enabled/domain1.comを構成した後、500サーバーエラーが発生し、Apache2から「NameVirtualHost *:80にVirtualHostsがない」という警告が出されました。次に、ports.confファイルで余分な(私は思う)NameVirtualHost *:80をコメントアウトしましたが、接続できず、ソケットエラーが発生しません。
これが私のApache2.confの一番下にあるものです:
NameVirtualHost *:80
#<VirtualHost *:80>
<IfModule mod_ssl.c>
NameVirtualHost *:443
</IfModule>
そして私の/Apache2/sites-enabled/domain1.com:
# domain: domain1.com
# public: /home/demo/public_html/domain1.com/
<VirtualHost *:80>
# Admin email, Server Name (domain name) and any aliases
ServerAdmin [email protected]
ServerName domain1.com
ServerAlias domain1.com
# Index file and Document Root (where the public files are located)
DirectoryIndex index.html
DocumentRoot /home/demo/public_html/domain1.com/public
# Custom log file locations
LogLevel warn
ErrorLog /home/demo/public_html/domain1.com/log/error.log
CustomLog /home/demo/public_html/domain1.com/log/access.log combined
</VirtualHost>
そして最後に、私のports.conf:
#NameVirtualHost *:80
#Listen 80
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/Apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
提供できる洞察に感謝します。
Listen 80
行をコメントアウトしたようです。そのため、Apacheは通常のhttp
ポートをリッスンしていません。
あなたは他のListen
ディレクティブがIfModule
ブロック内にあるので、それらのモジュールが存在しない場合は、Apacheが実質的にポートをリッスンしないように設定しているため、エラーの原因となる可能性があります。
行のコメントを外してみてください:
Listen 80
あなたのports.confで。