所以,如果我有以下网址:
www.mydomain.com/parser.php?id=19127axbj1
如何使用htcaccess将其设为
www.mydomain.com/19127axbj1
这可能吗?我看到运球有http://drbl.in/caYS
,所以想知道这样的事情。
答案 0 :(得分:1)
有可能。
RewriteRule ^(.*)$ /parser.php?id=$1 [L]
答案 1 :(得分:0)
如果请求的文件不存在,RewriteRules通常会说“向其他文件发送请求”。例如:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /parser.php [L]
然后,您会找到最初请求的路径... $_SERVER['PATH_INFO']
?
这可以防止递归请求之类的事情,并且允许您拥有“漂亮”的URL,而不会破坏所有直接文件访问。
答案 2 :(得分:0)
您可以使用此规则:
RewriteRule .* /parser.php?id=$0
将“www.example.com/whatever”更改为“www.example.com/parser.php?id=whatever”
但是,这仍然允许您直接访问“/parser.php”而不会出现屏蔽URL的错觉。为了避免这种情况,你必须使用php代码重定向:
if (strpos($_SERVER['REQUEST_URI'], "parser.php") !== false) {
header("Location: /$_REQUEST[id]", true, 303);
exit;
}