2

到目前为止,我对 .htaccess 文件知之甚少。我想将所有请求重定向到我的根文件夹中的一个 index.php 文件,除非 url 链接到存在且位于 files 文件夹中的文件。(例如example.com/files/picture.png) 我想在根目录中仅使用htaccess 文件来实现这一点,如果需要,在文件目录中使用一个。此外,我不想显示权限被拒绝消息。

现在我有这个:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]

但如果 url 引用的文件存在,它不会将一个重定向到 index.php 文件。有什么帮助吗?我在互联网上寻找,但找不到任何东西。

4

1 回答 1

5

像这样的东西:

RewriteEngine on

RewriteCond %{REQUEST_URI}  /img/.+(gif|png|jpg)$
RewriteRule .* - [L]

RewriteCond %{REQUEST_URI}  /css/.+(css|png)$
RewriteRule .* - [L]

RewriteCond %{REQUEST_URI}  /js/.+css$
RewriteRule .* - [L]

RewriteCond %{REQUEST_URI}  /js/.+(js|htm)$
RewriteRule .* - [L]

RewriteCond $1 !^(index\.php|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

除 css javascript 和图像文件外,所有请求都将通过 index.php 文件。我用于 codeigniter 框架的这个 .htaccess 文件,所以它可能会根据您的情况有所不同。

于 2013-01-17T22:30:56.463 回答