网站改版怎么样用.htaccess做301重定向
现在网站改版了,新老页面同时存在,想把老页面做一下301重定向,老页面为xxx/jx_58.html新页面为xxx/c58.html,怎么样写htaccess实现301重...
现在网站改版了,新老页面同时存在,想把老页面做一下301重定向,老页面为xxx/jx_58.html新页面为xxx/c58.html,怎么样写htaccess实现301重定向?
展开
1个回答
展开全部
- 301跳转通常用在网站换域名和为了保持链接统一性所用的。比如原来的域名现在换成,用了301跳转后,访问就会自动变成。下面摘抄一下设置301的代码:301跳转代码全集(ASP|PHP|JSP|.NET):
- IIS下301设置:Internet信息服务管理器 -> 虚拟目录 -> 重定向到URL,输入需要转向的目标URL,并选择“资源的永久重定向”。
- ASP下的301转向代码<%@ Language=VBScript %><% Response.Status=”301 Moved Permanently” Response.AddHeader “Location”, “” %>
- ASP.Net下的301转向代码<script runat=”server”> private void Page_Load(object sender, System.EventArgs e) { Response.Status = “301 Moved Permanently”; Response.AddHeader(”Location”,””); } </script>
- PHP下的301转向代码 header(”HTTP/1.1 301 Moved Permanently”); header(”Location: ”); exit();
- CGI Perl下的301转向代码$q = new CGI; print $q->redirect(””);
- JSP下的301转向代码<% response.setStatus(301); response.setHeader( “Location”,“” ); response.setHeader( “Connection”,“close” ); %>
- Apache下vhosts.conf中配置301转向,为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:<VirtualHost *:80> ServerName DocumentRoot </VirtualHost> <VirtualHost *:80> ServerName xxx.com RedirectMatch permanent ^/(.*) $1 </VirtualHost>
- Apache下301转向代码,新建.htaccess文件,输入下列内容(需要开启mod_rewrite):1)将不带WWW的域名转向到带WWW的域名下:Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^xxx.com [NC] RewriteRule ^(.*)$ $1 [L,R=301] 2)重定向到新域名Options +FollowSymLinks RewriteEngine on RewriteRule ^(.*)$ $1 [L,R=301]3)使用正则进行301转向,实现伪静态Options +FollowSymLinks RewriteEngine on RewriteRule ^news-(.+)\.html$ news.php?id=$1 将news.php?id=123这样的地址转向到news-123.html
- 301设置好这后,就要检测一下301是否生效。这里有两个在线检测301重定向的工具:
国内版:
国外版:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询