我正在开发一个文件共享网站,现在我想创建seo友好的url。我尝试了不同的.htaccess代码来实现Anybody请帮我实现
我有一个页面www.mydomain.com/gallery.php?id=2&title=newimage
我希望以www.mydomain.com/newimage/1.html
请给我.htaccess代码重写www.mydomain.com/gallery.php?id=2&title=newimage
到www.mydomain.com/newimage/1.html
答案 0 :(得分:1)
假设 1 和 2 实际上是相同的ID,您可以将这些规则添加到文档根目录中的htaccess文件中:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
ReewriteRule ^/?([^/]+)/([^/.]+)\.html$ /gallery.php?id=$2&title=$1 [L]
这样,当有人前往http://mydomain.com/foo/bar.html
时,他们会在/gallery.php?id=bar&title=foo
处获得内容。
为了纠正您无法控制的所有外部链接以开始使用新的更好看的网址,您也可以添加以下内容:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /gallery\.php\?id=([^&]+)&title=([^\ ]+)
RewriteRule ^ /%2/%1.html? [L,R=301]
这样,当有人放置http://mydomain.com/gallery.php?id=123456&title=blah
时,浏览器会被重定向到http://mydomain.com/blah/123456.html
,从而将浏览器地址栏中的地址更改为更好看的网址。