我想在最后一个斜杠/
之后获取网址的ID。 URL如下所示:
mysite.com/ID
现在,当我在斜线后面放入ID时,它会给我404找不到。
此代码在斜杠和完整网址后获取ID:
$url = $_SERVER['REQUEST_URI'];
echo "$url<br />";
$fullurl = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo $fullurl;
但问题是它显示404 Not found,当我在斜线后放入ID。这是我必须在我的.htaccess
中改变的吗?
答案 0 :(得分:1)
您需要将http://site.com/id
网址重定向到.php
文件
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d # not a dir
RewriteCond %{REQUEST_FILENAME} !-f # not a file
RewriteRule ^(.*?)/?$ index.php?id=$1 [L]
id
现在可以在PHP中以$_GET["id"]
的形式使用。如果要将其限制为数字,请使用
RewriteRule ^(\d+)/?$ index.php?id=$1 [L]
如果您想将/any/path/any/page.php
传递给PHP文件,请使用
RewriteRule ^(.*)$ index.php?uri=$1 [L]