我有这样的网址。
http://localhost:8080/computer/products.php?cid=3
我必须通过以下细分来修改。
http://localhost:8080/computer/products/3
有没有办法在mod重写中转换成段。
答案 0 :(得分:2)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此代码:
RewriteEngine On
RewriteBase /
RewriteRule ^([\w-]+)/([\w-]+)/(\d+)/?$ /$1/$2.php?cid=$3 [L,QSA]
答案 1 :(得分:0)
您可以尝试使用.htaccess中的这个简单代码
RewriteEngine on RewriteRule ^ / computer / products /([0-9] +)$ /computer/products.php?cid=$1
希望我帮助你。 马可答案 2 :(得分:0)
在.htaccess文件中尝试此操作:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^computer/(\w+)/(\w+)$ computer/$1.php?cid=$2 [L,PT]
您可以使用regex backreferences从原始网址转移任何部分。
在你的情况下:
^computer/ (\w+) / (\w+) $
⇓ ⇓
computer/ $1 .php?cid= $2
具体情况:
computer/ products / 3
⇓ ⇓
computer/ products .php?cid= 3
如果这不起作用,请检查.htaccess文件是否已启用:
AllowOverride All
或者,您可以将重写代码放在apache配置文件中。