Age*_*rum 9 php apache mod-rewrite friendly-url url-rewriting
我正在开发我的第一个体面的PHP网站,我对在应用程序中处理干净/友好/漂亮的URL的"正确方式"(假设有这样的事情)有点困惑.
我看到它的方式,有两个主要选项(我将使用简化的社交新闻网站作为例子):
1.使用mod_rewrite处理所有潜在的URL.这看起来与以下内容相似但不完全相同:
RewriteRule ^article/?([^/]*)/?([^/]*)/?([^/]*) /content/articles.php?articleid=$1&slug=$2
RewriteRule ^users/?([^/]*)/?([^/]*) /content/users.php?userid=$1&username=$2
RewriteRule ^search/?([^/]*)/? /content/search.php?query=$1
Run Code Online (Sandbox Code Playgroud)
2.将所有内容传递给某个处理程序脚本,让它担心细节:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) handler.php?content=$1
Run Code Online (Sandbox Code Playgroud)
显然,这是所有未经测试的"航空代码",但你明白了.
选项1 (.htaccess和几个.php文件)经常被"过去"使用; 现在,我看到选项2 (每个请求通过一个.php文件)使用了更多.
我在选项2中看到的主要优点是:
index.php
:如果您需要为所有请求执行一些代码,请将其放在那里,并且您确定它将始终执行.
几年前,我会选择1; 现在我使用MVC和Frameworks,我总是使用选项2.
归档时间: |
|
查看次数: |
1562 次 |
最近记录: |