Php htaccess重写非html请求
我已使用SiteScopper osx应用程序将动态.asp站点迁移到静态站点。。。 如果您直接访问,一切都可以完成 旧网址:Php htaccess重写非html请求,php,html,apache,.htaccess,mod-rewrite,Php,Html,Apache,.htaccess,Mod Rewrite,我已使用SiteScopper osx应用程序将动态.asp站点迁移到静态站点。。。 如果您直接访问,一切都可以完成 旧网址: http://www.mysite.com/content.asp?L=1&IdMen=158 新网址: http://www.mysite.com/content.asp-L=1&IdMen=158.html 我从旧的推荐入站链接(谷歌、雅虎等)中找不到页面 我想,通过使用.htaccess,重定向所有不包含“.html”的链接到永久重定向太h
http://www.mysite.com/content.asp?L=1&IdMen=158
新网址:
http://www.mysite.com/content.asp-L=1&IdMen=158.html
我从旧的推荐入站链接(谷歌、雅虎等)中找不到页面
我想,通过使用.htaccess,重定向所有不包含“.html”的链接到永久重定向太html页面
我尝试过这个,但没有成功:
RewriteEngine On
RewriteCond %{REQUEST_URI} !\.html
RewriteRule ^(.*)$ $1.html [R=301,L]
非常感谢
Frankie根据示例,如果要修改查询字符串,则需要在
文档\u ROOT/.htaccess
文件中使用此规则:
RewriteEngine On
RewriteCond %{QUERY_STRING} !\.html$ [NC]
RewriteRule !\.html$ %{REQUEST_URI}-%{QUERY_STRING}.html? [L,R=301,NE]
使用此规则:
/content.asp?L=1&IdMen=158代码>变成/content.asp?L=1&IdMen=158.html
这就是你想要的吗?几乎可以。。。重定向点指向:http://www.mysite.com/content.asp?L=1&IdMen=158?.html
和无到:http://www.mysite.com/content.asp?L=1&IdMen=158.html
我需要重定向而不使用?以前。我想要的是htmlyes。。。但是在我的web服务器上变成/content.asp?L=1&IdMen=158.?html
Ok确保这是您的第一条规则。我再次测试了它,并且/content.asp?L=1&IdMen=158代码>被重定向到/content.asp?L=1&IdMen=158.html
。另外,请确保在新浏览器中进行测试。我将离线几个小时,然后再检查。重定向工作(我尝试使用新浏览器)。。。但不幸的是,我收到了这样一条消息:找不到此服务器上找不到请求的URL/content.asp。
这是正确的,因为[content.asp]没有,但是[content.asp?L=1&IdMen=158.我很困惑