URLのようなサブフォルダを持つapache上の仮想ホスト
-
14-11-2019 - |
質問
私は興味があります、私は次のようなドメイン名でapache上のvhostsを持つことができれば:http://something.com/something または http://{server-ip-address-here}/何か ?
私はUbuntuサーバーでApache2.2.20を使用しています、それは私のホームサーバーであり、私はここでいくつかのものをテストしています、私はここにDNSサーバーを持ってい
だから、私は何をしましたか:
- 私は新しいファイル"demo"を作成しました /etc/apache2/sites-available
私はこれをそこに置きます(実際にはデフォルトファイルから変更を加えてコピーされます):
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName {mydomain-here}/demo/ DocumentRoot /vhosts/demo <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /vhosts/demo/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
/Etc/apache2/sites-enabled/にシンボリックリンクを作成し、/etc/apache2/sites-available/demoを指します
作成された /バーチャルホスト/デモ/インデックス.html ファイル。
そして今、私が得るのは、私が{my-domain}に行くとき、私が作成したvhostに行くということですが、問題は、サーバーが私が望むものだけでなく、{my-domain}/demoどのような場合にも
結論として、私は別の仮想ホストを作成し、同じbase-urlを持つ別のURLにそれらを添付できるようにしたいと思いますwww.mydomain.com/vhost1,www.mydomain.com/vhost2 など。.
それは可能ですか?ありがとう:)
解決
開始するには、仮想ホストに*:80設定があるため、要求に一致するものがない場合は、最初の仮想ホストエントリを使用します
あなたが何をしようとしているのか理解していれば、各「仮想ホスト」の別名を付けたいだけのように見えます
あなたがやろうとしていることは、かなりの仮想ホストではありません(少なくとも仮想ホストが行うことになっていること)が、apacheのエイリアス機
Alias /vhost1 /whatever/folder/your/vhost1/site/is/at
Alias /vhost2 /whatever/folder/your/vhost2/site/is/at
だから今、あなたが使用するドメインは何でも、例えば http://whatever.com/vhost1 または http://whatever.com/vhost2 Emの両方が別々のサイトとして表示されます