wiki.mysite.com
Debian では、プライマリサイトサブドメインの Wiki サイトをサイトパス: to に移動しようとしますmysite.com/wiki
。
2つのDNSレコードがあり、Apacheの下に2つのconfファイルがwiki.mysite.com
あります。mysite.com
wiki.mysite.com.conf
mysite.com.conf
そしてウェブサイトのディレクトリがあります:
/var/www/html/www.mysite.com
/var/www/html/www.wiki.mysite.com
すべてがうまくいきます。これで、Wikiサイトを自分のプライマリサイトへのパスに移動する必要があります。www.mysite.com/wiki...
次のアップデートを試しましたが、mysite.com.conf
Apacheの再起動後にアクセスしようとすると、「見つかりません:要求されたURLがこのサーバーに見つかりません」というメッセージが表示されます。mysite.com/wiki
(しかしmysite.com
うまくいきます)。私は助けます。何をしますか? :
<VirtualHost *:80>
Server Admin webmaster@localhost
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/html/www.mysite.com
<Directory /var/www/html/www.mysite.com/>
AllowOverride All
</Directory>
<VirtualHost>
<VirtualHost *:80>
Server Admin webmaster@localhost
ServerName mysite.com/wiki
ServerAlias www.mysite.com/wiki
DocumentRoot /var/www/html/www.wiki.mysite.com
<Directory /var/www/html/www.wiki.mysite.com/>
AllowOverride All
</Directory>
<VirtualHost>
2番目の仮想ホストのみを追加しました。最初の仮想ホストは、元のサイトをサブドメインサイトに設定したときに存在しました。繰り返すと、最初の仮想ホストはまだ機能します。
答え1
あなたが探しているのはalias
アイテムです。エイリアスは、URLの特定のサブパスの代替場所を指定します。このために複数の仮想ホストを使用する必要はありません。
これApacheドキュメントですalias
。ここでは、次の情報が提供されます。
このモジュールに含まれているディレクティブを使用すると、要求がサーバーに到着したときにURLを操作および制御できます。 AliasとScriptAliasの指示は、URLとファイルシステムのパスをマッピングするために使用されます。これにより、DocumentRootのすぐ下にないコンテンツがWebドキュメントツリーの一部になる可能性があります。
www.wiki.mysite.comのサイト文書が絶対URLを参照している場合(例:を指している場合)、これが行われることに注意してください/index.php
。mysite.com/index.php
mysite.com/wiki/index.php
<VirtualHost *:80>
Server Admin webmaster@localhost
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/html/www.mysite.com
Alias /wiki /var/www/html/www.wiki.mysite.com
<Directory /var/www/html/www.mysite.com/>
AllowOverride All
</Directory>
<Directory /var/www/html/www.wiki.mysite.com/>
AllowOverride All
</Directory>
</VirtualHost>