现在我的url是
detail.php?category=abc&model=126
我想要这个
detail/abc-126.html
我在中使用此代码但是不能正常工作
.htaccess
RewriteRule ^detail/([a-zA-Z0-9_-]+)/([0-9]+)'.html$ detail.php?category=$2&model=$2
我的第二个问题是假设我在我的网站上使用这样的目录折叠式
www.example.com/foldername/detail/abc-126.html
和我的php文件在这个文件夹
www.example.com/foldername/detail.php
和中的.htaccess文件
www.example.com/.htaccess
在这里吗
那么我如何使用foldername
这不是一个重复的帖子,我搜索了很多网站,但我不知道如何解决这个
所以请帮我解决这个问题感谢
您有两个条件,并且两次引用$2
而不是$1
&$2
。所以这是一个问题。这可能不会解决你的问题,因为我不太擅长重写,但这只是一个开始。
同样,你想要abc-126.html
,但你在重写之间有一个正斜杠,就像)/(
一样。
对于您的第二个问题,我不能100%确定您在问什么,但如果.htaccess
文件在父目录中,则会通过子目录感受到它的效果,除非您在子目录中放入新的.htaccess
文件。
您正在捕获两个东西,$1
和$2
。当您创建应该重定向到的路径时,您只能使用$2
。你必须同时使用它们才能工作:
.-------------------------------------.
.------------/------------------------------. '
|----- $1 -----| |- $2 -| ' '
RewriteRule ^detail/([a-zA-Z0-9_-]+)-([0-9]+)'.html$ detail.php?category=$1&model=$2