2017-12-19 17 views
1

メインの.htaccessファイルにルールをダンプしないように、2つの別々の.htaccessファイルを管理するにはどうすればよいですか。例えばサブフォルダ内の別の.htaccessファイルを維持する

:私は、すべてのURLが^ショーの後、末尾たい(/.*)?$コントローラ/ショー(.htaccessの下に作成.htaccessファイルを指すように)

答えて

1

あなたの書き換えルールに応じて、これはすることができ.htaccessファイルの最小限の書き換え(heh)で達成されました。

  • www.example.com/foo/help/123 -> wwww.example.com/foo/help.php?q=123
  • www.example.com/blog/myarticle -> www.example.com/blog/index.php?id=myarticle

お知らせ最初RewriteRule:私たちはここに書き換えの2種類をやっている

RewriteEngine On 

RewriteRule ^/foo/help/(.*)? /foo/help.php?q=$1 
Rewriterule ^blog/(.*)? blog/index.php?id=$1 

:例えばウェブルート/var/www/htmlに保存されているこの.htaccessファイルを取ります絶対パスを使用し、2番目のパスは絶対パスを使用しています。

私は/var/www/html/foo/.htaccessに最初RewriteRuleを移動した場合、ファイルは次のようになります。あなたは、絶対パスを使用しているので、何も変更する必要がないこと

RewriteEngine On 

RewriteRule ^/foo/help/(.*)? /foo/help.php?q=$1 

注意。 RewriteRule

RewriteEngine On 

RewriteBase /blog/ 
RewriteRule ^(.*)? index.php?id=$1 

注意パスは、現在のディレクトリにそれらを相対にするために取り除かれた、今ある:私は、ファイルは次のようになり/var/www/html/blog/.htaccessに二RewriteRuleを移動した場合今

/blogRewriteBase指示文にも注意してください。これは、サブディレクトリに相対書き換え規則を使用する場合に必要です。

サブディレクトリ.htaccess書き換えルールを使用する別の例については、this questionを参照してください。

関連する問題