[英]Why do I get empty $REQUEST_URI after .htaccess redirection
我嘗試根據自己的需要自定義http://alistapart.com/article/success中的說明-將所有* .html頁面重定向到解析URL的dispatcher.php文件中。
在我的.htaccess文件中,我添加了
RewriteRule ^(.*)\.(html)$ dispatcher.php [L,NC]
但dispatcher.php中的所有參數均為空:
echo "1. " . $REQUEST_URI . "<br />";
echo "2. " . $DOCUMENT_ROOT . "<br />";
echo "3. " . $SCRIPT_FILENAME . "<br />";
為什么我沒有得到這些參數?
同時,我通過使用以下命令來避免此問題:在.htaccess中-
RewriteRule ^(.*)\.(html)$ dispatcher.php?u=$1 [L,NC]
並在dispatcher.php中-
$u = $_GET['u']; // and use this $u parameter . . .
原始示例代碼 :
RewriteRule !.(gif|jpg|png|css)$ /your_web_root/index.php # in .htaccess
if(file_exists($DOCUMENT_ROOT.$REQUEST_URI)
and ($SCRIPT_FILENAME!=$DOCUMENT_ROOT.$REQUEST_URI)
and ($REQUEST_URI!="/")){ . . . // in index.php
$ REQUEST_URI,$ DOCUMENT_ROOT ...不是變量!
你應該使用
$_SERVER['REQUEST_URI']
$_SERVER['DOCUMENT_ROOT']
...
ps你可以簡單地:
var_dump($_SERVER);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.