我目前使用.htaccess和PHP通过以下方式解析URL:
网址:
http://blah.com/article/123_this-that-and-the-other
.htaccess:
RewriteEngine On
RewriteRule ^article/([0-9]+)_(.+)/?$ index.php?page=article&id=$1 [L]
的PHP
$page = isset($_GET['page']) ? safeGET($_GET['page']) : null;
$id = isset($_GET['id']) ? safeGET($_GET['id']) : null;
if ($page=='article') { include 'article.php'; } elseif { ... }
我已经开始遇到偏执的Mod_Security引擎的问题,该引擎在$_GET请求中不喜欢“ admin”一词.但是,大多数情况下,我只是在寻找用于解析SEO友好URL的新技术.
有人知道更优雅的方法吗?
解决方法:
您可以将整个查询字符串作为一个参数.
RewriteRule ^([^.]+)$index.php?url=$1 [QSA,L]
然后,您可以使用php拆分字符串,并将不同的参数转换为数组以执行您喜欢的任何操作.