我怎么会去这样做这样的事情:如何隐藏GET变量,但保留价值
www.website.com/process.php?ip=32.313.131.31
到
www.website.com/32.313.131.31
我怎么会去这样做这样的事情:如何隐藏GET变量,但保留价值
www.website.com/process.php?ip=32.313.131.31
到
www.website.com/32.313.131.31
使用URL重写模块。如果你使用Apache,mod_rewrite是这个工作的工具。在你的情况下,这样的规则应该足够了:
RewriteRule ^/(\d+\.\d+\.\d+\.\d+) /process.php?ip=$1
如果你想要一个更一般的规则,不只是匹配的IP地址,就成了棘手的,因为你不希望规则匹配重写表单,以防万一它在某处链接中被无意中指定(例如,您不希望www.website.com/process.php?ip=32.313.131.31
被重写为www.website.com/process.php?ip=process.php?ip=32.313.131.31
)。
我假设你使用的是Apache,所以你可以使用mod_rewrite来实现这一点。在文档根目录下创建一个.htaccess
文件,并创建一个重写规则,将所有看起来像IP地址的请求传递给process.php。像这样的事情应该这样做:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^/\d+\.\d+\.\d+\.\d+$ /process.php?ip=$1 [NC]