0

そこで、すべてのリクエストが index.php を通過するように設定したいと思います。

一部の Google 検索で、この mod_rewrite が表示されました

<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !(index\.php|public|css|js|robots\.txt) 
    RewriteRule ^ index.php [L,QSA]
</IfModule>

これは機能します。でも、実際にindex.phpを叩いても動かしたくありません。したがって、www.domain/test を www.domain/index.php/test として処理する必要があります。

しかし、ブラウザで www.domain/index.php/test をクリックすると、同じことが行われるはずですが、どこかのホーム フォルダにリダイレクトされます。

また、css、js、およびロボットでこのリダイレクトが発生することを望まないことも読みました。

index.php に対して何もしないルールを作成するにはどうすればよいですか?

4

1 に答える 1

1

これは機能するはずです。

<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond $1 !^(index\.php|public|css|js|robots\.txt|test) 
    RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
于 2013-05-23T21:50:34.017 に答える