1.目標:
このマシン上の異なるドメイン名と異なるディレクトリへのアクセスを実現します。 つまり、a.com にアクセスして /var/www/a ディレクトリにプログラムを入力し、b.com にアクセスして /var/www/b ディレクトリにプログラムを入力します。
2. 発生した問題:
/etc/apache2フォルダディレクトリ
mods-available 利用可能なモジュール conf-available 利用可能な構成 sites-available 利用可能なドメイン名/仮想ディレクトリ ports.conf インターフェイス ファイル
mods-enabled 有効なモジュール conf-enabled 有効な設定 sites-enable 有効なドメイン名/仮想ディレクトリ envvars apache2.conf メイン設定
Windows の設定ファイルと比較すると、Ubuntu の Apache の設定ファイルは比較的分散しています。これは、サイトの 1 つを設定するときにエラーが発生しても、他のサイトの動作には影響しません。
apache2.conf これはメインの設定ファイルです。このファイルは、外部に散在する設定ファイルをまとめた、建物の骨組みのようなものです。
真実が明らかになったので、sites-available で a.conf b.conf を作成し、sites-enable でソフト リンクを作成します
ただし、すべてのドメイン名にアクセスすると、www ルート ディレクトリが参照されます。 sites-enable に設定ファイルが 1 つしかない場合は問題ありません。
3. 問題を解決する
私は数日間混乱していましたが、役に立ちませんでした。最後に投稿で答えを見つけました。具体的な原理はまだよく理解できていないので、今後の参考のために記録しておきます。
デフォルト設定ファイル内の次の 2 行をコメントアウトするだけです。
ErrorLog ${APACHE_LOG_DIR}/error.log が
に変更されました#エラーログ ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log の結合が
に変更されました#CustomLog ${APACHE_LOG_DIR}/access.log の結合
参考:
http://forum.ubuntu.org.cn/viewtopic.php?t=341070