CMS类型的URL处理在哪里 - htaccess或index.php?

时间:2011-05-20 04:28:11

标签: .htaccess

在我的应用程序中,我有wiki博客和其他内容,作者可以在创建它们时分配URL,以便针对搜索引擎进行优化。

所以,我想将URL重定向到index.php,在那里我检查数据库并相应地生成输出。

但是,还有CSS,图像和其他文件的请求,我必须单独留下。

  • 我可以在HTACCESS中排除CSS,图片等,并将其他所有内容重定向到index.php。

  • 或者我可以将所有内容重定向到index.php然后只需使用header()更改图像css等位置。

我应该选择哪种方法?

3 个答案:

答案 0 :(得分:0)

我在我的应用程序中执行的操作包括header.php文件中与模板无关的所有内容以及footer.php文件中与模板相关的所有内容。这样,我可以调用header.php,如果我需要访问我的软件的/ just / database方面。

答案 1 :(得分:0)

IMO最好使用简单的.htaccess规则排除静态文件(css,js,images),并将其余的URI转发到前端控制器,即index.php

如果您要处理index.php中的静态文件,则必须使用php header()函数重定向它们(并向浏览器添加1次额外的往返)或者您需要使用适当的内容类型输出他们的内容,而不是你的前端控制器应该做的工作..

答案 2 :(得分:0)

如果只将任何不存在的资源文件/目录请求移交给index.php文件,该怎么办?我认为这些通常是如何运作的。

.htaccess -

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule /?([A-Za-z0-9_-]+)/?$ index.php?id=$1 [QSA,L]
</IfModule>