我目前有一个有用的网址:
http://example.com/security-services.php?service=fixed-camera-surveillance
然后我让PHP说,$_REQUEST['service']
做一些事情......
但是如果URL看起来像这样,我想实现相同的功能:
http://example.com/security-services/fixed-camera-surveillance
谢谢!
答案 0 :(得分:4)
具有类似内容的.htaccess
文件应该可以。
Options +FollowSymLinks
RewriteEngine On
RewriteRule security-services/(.*)/? security-services.php?service=$1 [L]
说security-services/(.*)/?
的部分与浏览器中的网址匹配,并将其重写为security-services.php
。
关键部分是(.*)
,它捕获URL的那部分并将其作为GET值传递给PHP脚本。
答案 1 :(得分:1)
尝试此规则:
RewriteEngine on
RewriteRule ^security-services/([^/]+)$ security-services.php?service=$1 [L]
[^/]+
描述/security-services
之后的下一个路径段,(…)
形成一个匹配的组,然后可以在替换中引用$1
。
如果你想要任何类型的…-service.php
文件更通用:
RewriteEngine on
RewriteRule ^([^/-]+)-services/([^/]+)$ $1-services.php?service=$2 [L]
答案 2 :(得分:0)
您可以创建如下规则:
RewriteRule ^security-services/(.*)/? /security-services.php?service=$1
如果您使用的是.conf文件,请将^
更改为^/