0

注:どうやら私の仮想ホストエントリのServerNameに衝突があり、/ etc/hostsファイルにいくつかの変更を加える必要があります。これを調べますが、どんな洞察もありがたいです。ありがとう

=======================================

(私はhttp://をhxxp://に置き換えて、stackoverflowがこれを投稿できるようにしたことに注意してください)

サブディレクトリで複数のWordPressインストールをホストするサーバー10.1.1.1があります。サーバーの仕様:

OS:RHEL 6.2 Santiago Apacheバージョン:Apache / 2.2.15(Unix)PHPバージョン:5.3.9MySQLバージョン5.5.20

仮想ディレクトリsite_one(つまりhxxp://10.1.1.1/site_one)から実行したい最初のWordPressインストール-このサイトのコードは/ var / www / sites/site_oneにあります

仮想ディレクトリsite_two(つまり、hxxp://10.1.1.1/site_two)から実行したい2番目のWordPressインストール-このサイトのコードは/ var / www / sites/site_twoにあります

また、ダミーのhelloworldindex.htmlファイルを/var/ www/sitesにドロップしました

-

httpd.confに次の変更を加えました。

  1. サイト全体のDocumentRootは/var/ www / sitesに設定されます。つまり、次のようになります。

    DocumentRoot "/ var / www / sites"

  2. httpd.confの一番下に、次のVirtualHostディレクティブがあります(出力<ブロック>へのスタックオーバーフローを取得できなかったため、<と>を[]に置き換えました。

    NameVirtualHost *:80
    [VirtualHost *:80]
    ServerName 10.1.1.1
    DocumentRoot / var / www / sites/site_one
    エイリアス/site_one/ var / www / sites / site_one /
    [/ VirtualHost]

    [VirtualHost *:80]
    ServerName 10.1.1.1
    DocumentRoot / var / www / sites/site_two
    エイリアス/site_two/ var / www / sites / site_two /
    [/ VirtualHost]

    • httpd(httpd -t)の構文を確認し、構文はOKです。
    • httpdを再起動します

-

hxxp://10.1.1.1/site_twoにアクセスしようとすると、404が表示され、error_logは/ var / www / sites / sites_one /site_two/でファイルを検索していると報告します...明らかにそこを見るのではなく、/ var / www / sites / site_two /で...私は何が間違っているのですか?助けてくれてありがとう!

4

1 に答える 1

1

Apacheのドキュメントを参照してください。http://httpd.apache.org/docs/2.2/vhosts/name-based.html

IPアドレスが1つしかないため、名前ベースの仮想ホストを使用しようとしています。これは問題ありませんが、これがどのように機能するかについてDNSの部分が欠けています。ドキュメントから:「各ホスト名を正しいIPアドレスにマップするようにDNSサーバーを構成してから、異なるホスト名を認識するようにApacheHTTPサーバーを構成するだけです。」

最初にリストされている仮想ホストは、常にデフォルトのホストです。そのため、site_oneは想定どおりに動作しますが、site_twoにアクセスしようとすると、デフォルトの仮想ホストに分類されます。あなたは仮想ホストがどのように機能するかについて間違った考えを持っています。実行しようとしていることはエイリアスを使用して実行できますが、コード内のどこかでドキュメントルートを参照している場合は、参照しているサイトをフォローアップする必要があります。

たとえば、PHPコードでは次のようになります。

require($_SERVER['DOCUMENT_ROOT']."/site_one/directory/to/wherever
于 2012-06-19T13:50:42.173 に答える