我在下面重写了网址代码:
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)\.html$ /process.php?device=$1&url=$2 [L]
当我访问: dommain.com/test-125-ggg/data-259-data2.html 时,它正常运行,但此网站中的所有链接都更改为 dommain.com/ < EM>测试-125-GGG / XXXXX
例如: dommain.com/test-125-ggg/images/logo.png而不是dommain.com/images/logo.png
如何解决这个问题?
我想在访问domain.com/process.php?device=$1&url=$2时自动重定向到dommain.com/zzz/xxx,但我不知道该怎么做?
非常感谢你
答案 0 :(得分:0)
您可以使用:
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+process\.php\?device=([^\s&]+)&url=([^\s&]+) [NC]
RewriteRule ^ /%1/%2.html? [R=302,L,NE]
RewriteRule ^([^/]+)/([^/.]+)\.html$ /process.php?device=$1&url=$2 [L,NC,QSA]
为了解决其他问题,请使用css,js,images文件中的绝对路径而不是相对文件。这意味着您必须确保这些文件的路径以http://
或斜杠/
开头。
您还可以尝试在页面的<head>
部分添加此内容:<base href="/" />
,以便从该网址解析每个相对网址而不是当前页面URL。