0

.htaccess と mod_rewrite を使用した経験はありますが、これを機能させることはできません。基本的に、「パブリック」サブディレクトリ内の既存のファイルを指すものを除いて、すべての URL が index.php にリダイレクトされるわけではありません。

たとえば、 /public/logo.png のようなファイルがある場合、次のようにします。

http://example.com/logo.png -> /public/logo.png http://example.com/logo2.png -> index.php (logo2.png は存在しません) http://example.com /なんでも-> index.php

ありがとうございました :)

4

2 に答える 2

2
RewriteEngine on

RewriteCond  %{DOCUMENT_ROOT}/public/$1 -f
RewriteRule  ^(.*)$  /public/$1  [L]

RewriteCond %{REQUEST_URI} !^/index\.php$
RewriteRule ^(.*)$ /index.php [R=301,L]
于 2013-06-13T11:06:12.643 に答える
2

これは非常に面倒に見えますが、アミンの助けのおかげで、私は最終的にこれを解決しました:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ - [L]

RewriteCond  %{DOCUMENT_ROOT}/public/$1 -f
RewriteRule  ^(.*)$  /public/$1  [L]

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

それが役に立てば幸い

于 2013-06-13T12:21:59.047 に答える