web-dev-qa-db-ja.com

Apache仮想ホストファイルのサブフォルダーにリダイレクトする

Ubuntu Server 12.04を実行しているWebサーバーにJoomlaをインストールしています。 Joomlaフォルダーは/ var/www/cms /にあります。

/ etc/Apache2/sites-enabled/defaultにある私のvhostファイルには、次のコンテンツがあります。

<VirtualHost *:80>
    ServerName domain.com/
    Redirect permanent / https://domain.com/
</VirtualHost>

<VirtualHost *:443>
    ServerAdmin webmaster@localhost
    ServerName domain.com:443

    DocumentRoot /var/www/cms
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /var/www/cms>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    (...)
</VirtualHost> 

現時点では、domain.comへのすべてのリクエストと、その後に入力されたdomain.com/exampleのようなものはすべて、適切なページにリダイレクトするか、カスタム404エラーを返すJoomlaによって処理されます。これはすべて機能します。

ここで、Joomlaで処理される前にdomain.com/subfolderに送られるすべてのリクエストをフィルター処理し、/ var/www/subfolder(/ var/www/cms /のルートフォルダーではなく)にリダイレクトします。

/ etc/Apache2/sites-enabled/default(上記を参照)内のファイルは、このようなリダイレクトを定義するのに適切な場所だと思いますが、どの位置にどのようにこれを達成するかを理解できていません。

18
ojs

構成に追加する必要があります。

Alias /subfolder /var/www/subfolder
<Directory /var/www/subfolder>
    Order allow,deny
    allow from all
</Directory>

「ディレクトリ」間の構成をニーズに合わせます。

詳細については、 Apache documentation を参照してください。

27