通过index.php(包括图像,CSS等)路由每个请求

时间:2013-07-16 16:52:55

标签: php url routing

(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文件怎么样?我猜我也可以包括那些。但那么......图像怎么样?

我猜这是一种我还不知道的更好的方式。

(一个请求:请不要建议使用框架。我想在使用其他人的代码之前了解其工作原理。)

1 个答案:

答案 0 :(得分:1)

更改重写条件以包括排除的文件类型列表:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !\.(png|jpg|gif)$
    RewriteRule . /index.php [L]
</IfModule>