htaccess url重写和PHP $ _GET ['id']问题

时间:2018-06-09 17:04:28

标签: php .htaccess url-rewriting

我想从

重写我的网址
  

message.php?ID = 372186

  

消息/ 372186

这是我的htaccess

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteEngine On
RewriteRule ^message/([^/.]+)/?$ /message.php?pg=$1 [L]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [L]

我可以加载example.com/test/message/372186,但是当我尝试获取页面ID时,它什么也没有返回。

如果我使用message.php?id = 372186,那么PHP工作正常。

<?php
echo $_GET['id'];
// output for message.php?id=372186 is: 372186
// output for message/372186 is: 
?>

我做错了吗?感谢。

1 个答案:

答案 0 :(得分:0)

RewriteRule ^message/([^/.]+)/?$ /message.php?pg=$1 [L]

看到你说的那条线?pg = $ 1?

当你应该使用$ _GET ['pg']

时,你正在尝试$ _GET ['id']