私はLinux Mint 17.3を使用しており、Apache 2.4で仮想ホストを作成しようとしています。以下の手順に従いましたが、まだサイトを閲覧できません。
2 つの新しい仮想ホストを作成します。
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site1.com.conf
各ホストを変更します。
sudo vim /etc/apache2/sites-available/site1.com.conf <VirtualHost *:80> ServerName site1.com ServerAlias www.site1.com ServerAdmin [email protected] DocumentRoot /var/www/site1.com/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
新しい仮想ホストファイルを有効にします。
sudo a2ensite site1.com // Disable original html host sudo a2dissite 000-default.conf sudo service apache2 reload
ホスト情報を追加します。
sudo vim /etc/hosts 127.0.0.1:88 site1.com 127.0.0.1:89 site2.com
インターネットで立ち寄るとおりみんな探してみました。ここで私が逃したステップが何であるか疑問に思います。
答え1
私はあなたの構成が次のようになるべきだと思います。
Listen 80
<VirtualHost *:80>
DocumentRoot "/www/example1"
ServerName www.example.com
# Other directives here
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/www/example2"
ServerName www.example.org
# Other directives here
</VirtualHost>
000-default.confを使用し、どのように機能するかを理解するまで、他の設定を忘れてください。アプリケーションサーバー(たとえば、特定のポートで動作するノードやtomcat)がある場合は、仮想ホストポートをそのアプリケーションのポートとして設定できますが、/var/www/リソースで静的にサービスを提供したいようです。マルチポートマッピングは必要ないし、必要もない。 Apacheは単にリクエストを監視し、適切な場所にトラフィックをルーティングします。この構成では、ホストファイルは次のようになります。
127.0.0.1:80 example.com
127.0.0.1:80 example.org
編集する:私はほとんどのconfファイルを公開しましたが、listen 80
ファイルの上部にディレクティブがありませんか?