(php新手在这里)
我正在为一个大多数静态营销网站编写一个非常简单的路由器。到目前为止,我的每个请求都与文件不匹配,请通过我的index.php。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /index.php [L]
</IfModule>
在我的index.php中,我决定要输出什么。这很好用。
但是如果用户专门浏览我不希望他们去的文件会发生什么?它不会通过我的index.php。所以我可以删除那个条件......但是css文件怎么样?我猜我也可以包括那些。但那么......图像怎么样?
我猜这是一种我还不知道的更好的方式。
(一个请求:请不要建议使用框架。我想在使用其他人的代码之前了解其工作原理。)
答案 0 :(得分:1)
更改重写条件以包括排除的文件类型列表:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !\.(png|jpg|gif)$
RewriteRule . /index.php [L]
</IfModule>