0

htaccess/apache 書き換えの問題がありますが、少しトリッキーです。

www.example.org のようなドメインがあり、すべてのコンテンツ ファイルは

/var/www/www.example.org/content 

すべてのファイルは、に保存されている index.php を介してアクセスする必要があります。

/var/www/www.example.org/start1

そのため、すべてを index.php に書き換える .htaccess があります (問題ありません)。

on apache は、次で定義されたホストです。

ServerName  www.example.org
DocumentRoot /var/www/www.example.org/start1

それはすべてうまくいきますが、今は 2 番目の要件があります。

別の index.php を介してアクセスする必要があるコンテンツに特別なファイルがあります (以前と同じ index.php を使用する方法はありません)。

だから私は2番目のindex.phpを入れました

/var/www/www.example.org/start2 

.htaccess ですべてを新しい index.php に書き換えます。

Apacheでエイリアスを定義しました

Alias /special /var/www/www.example.org/start2 

www.example.org/special/file にアクセスすると、 /var/www/www.example.org/start2 からの .htaccess が書き換えログの最初になります。しかし、期待したように、start2 フォルダーの index.php ではなく、start1 フォルダーの index.php に書き換えます。

ドキュメントルートが原因だと思いますが、何ができるのかわかりません。ドメインは 1 つしかないため、VHost はオプションではありません

4

1 に答える 1

0

start2 フォルダーでは、おそらく次のようなことを行う必要があります。

RewriteRule ^(.*) /special/index.php [L]

にエイリアス/specialを 設定したためです/var/www/www.example.org/start2

于 2012-08-06T21:44:50.993 に答える