我很乐意承认,.htaccess
不是我最大的力量,特别是regex
可能涉及的地方。 (我变得越来越好,但仍然在那里。)无论如何,基于这个Git on common htaccess commands,我在htaccess
中包含了以下内容:
RewriteRule ^/?Search/([^/d]+)/([^/d]+)/?$ Search.html?searchvariable=$1&searchnumber=$2 [L,QSA]
现在,这个地址
http://example.com/Search/Foo/12
将显示包含12个条目的搜索页面。
但是这......
http://example.com/Search/doo/12
每次都会404
。事实上,在我的搜索部分中, d 的任何地址都会404
。
我猜这是由于([^/d]+)
,但我认为(通过正则表达式)意味着任何数字或单词都带有/d
,但也许它是被视为 not d ?
我如何重写它,所以它是任何变量,甚至包含字母d的变量?
答案 0 :(得分:1)
冒险...... 重写了
RewriteRule ^/?Search/([^/d]+)/([^/d]+)/?$ Search.html?searchvariable=$1&searchnumber=$2 [L,QSA]
as
RewriteRule ^/?Search/([^/]+)/([^/]+)/?$ Search.html?searchvariable=$1&searchnumber=$2 [L,QSA]
它工作正常。不知道为什么我工作的例子包括随机的......好吧。