好吧,我在创建.htaccess
时遇到了麻烦,无论如何,我的菜单中有类别,例如test1
,test2
,test3
文件夹的名称,我试图做的是将URL的第二个参数指向index.php
,例如http://myapp/test1
我希望能够从index.php
拥有$_GET['cat'] = test1
等等。
这是我到目前为止尝试过但没有奏效的方法:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)/$ index.php?cat=$1 [NC,L]
对此有任何帮助吗?非常感谢。
尝试从重写规则中删除预告片/
字符。 ^(.*)/$
匹配以/
结尾的任何 URL,例如 http://myapp/test/
。您可能正在寻找^(.*)$
或剥离任何前导斜杠^/(.*)$
。请注意,如果index.php
是通过 f.ex 直接访问的。 http://myapp/index.php
这也将匹配并重写为http://myapp/index.php?cat=index.php
并且任何图像都不能直接访问。因此,您可能希望添加一些RewriteCond
,首先检查请求的 URL 是否是现有文件,RewriteCond %{REQUEST_FILENAME} !-f
RedirectRule
重写 URL。