2009-11-09 56 views

回答

0

您可以创建一个这样的规则。

Options +FollowSymLinks 
RewriteEngine On 

RewriteRule security-services/(.*)/? security-services.php?service=$1 [L] 

,说security-services/(.*)/?的部分URL匹配的浏览器并重写为security-services.php

关键部分是(.*),它捕获该部分URL并将其作为GET值传递给PHP脚本。

4

.htaccess文件,这样的事情应该这样做:

+0

谢谢回答! 我已经完成了你的建议并且页面加载正常。我面临的唯一问题是捕获'服务'变量。 比方说,我想测试它,我会有原始示例: http://example.com/security-services.php?service=fixed-camera-surveillance 并且可以使用“echo $ _REQUEST [“服务”]“ 新的例子, http://example.com/security-services/fixed-camera-surveillance 我想”固定摄像头的监控”被回显。 建议? – 2009-11-09 20:52:03

+0

你试过了吗?上面的代码实现了它,它使用'(。*)'正则表达式找到任何东西,并将它转储到你看到$ 1的地方,所以你的脚本在'security-services.php'文件中。 – MalphasWats 2009-11-09 21:05:09

+0

是的,我试过了,我想从网址'...'/ security-services/fixed-camera-sur中捕获'固定摄像机监控' veillance”。我会像以前一样询问['service']吗,还是只存储在$ 1中? – 2009-11-09 21:18:07

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] 
+0

感谢您的回复! 我已经完成了你的建议并且页面加载正常。我面临的唯一问题是捕获'服务'变量。 比方说,我想测试它,我会有原始示例: http://example.com/security-services.php?service=fixed-camera-surveillance 并且可以使用“echo $ _REQUEST [“服务”]“ 新的例子, http://example.com/security-services/fixed-camera-surveillance 我想”固定摄像头的监控”被回显。 建议? – 2009-11-09 20:53:13

+0

@Mike B:这应该以同样的方式工作,你不应该注意到任何区别。 – Gumbo 2009-11-09 21:39:52