当前位置:首页 > 服务器 > 正文

服务器301重定向(301重新定向)

本篇文章给大家谈谈服务器301重定向,以及301重新定向对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

tomcat 或者 jsp 怎么实现301重定向

在jsp发布容器中配置:

可以利用Apache的mod_rewrite对URL进行重写或重定向。需要以下几步:

1、首先确保开启了mod_rewrite功能。

用文本编辑器打开Apache安装目录\conf\httpd.conf,找到“#LoadModule rewrite_module modules/mod_rewrite.so”这行,去掉前面的“#”;

继续查找“AllowOverride None”,修改为“AllowOverride All”;

然后,重启Apache即可。

2、在你需要URL重定向的网站根目录下放一个.htaccess文件,文件名是.htaccess,Windows下不能直接建立,你可以用记事本另存为。

3、在.htaccess中通过正则表达式重定向到需要的页面。示例如下:

将不带www的顶级域名301重定向到带www的域名

301重定向(或叫301跳转、301转向)是用户或搜索引擎蜘蛛向网站服务器发出访问请求时,服务返回的HTTP数据流中头信息(header)部分状态码的一种,表示本网址永久性转移到另一个地址。

网站301重定向怎么做?

一般在使用网站更换域名的时候才使用301重定向。在竹子建站中做301重定向,进入网站管理,选择301 重定向,给网站的首页设置301重定向就可以了。

网站改版301重定向怎么做

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 ^/(.*) 

/VirtualHost

Apache下301转向代码,新建.htaccess文件,输入下列内容(需要开启mod_rewrite):1)将不带WWW的域名转向到带WWW的域名下:

Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} ^xxx.com [NC]

RewriteRule ^(.*)$  [L,R=301]

2)重定向到新域名

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^(.*)$  [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重定向的工具:

国内版:

国外版:

如何通过URL重写规则实现301重定向

如何实施301重定向

①:虚拟主机

Linux虚拟主机设置301跳转方法:

在本地新建一个文本文件,最好用的专业的编辑器软件如EditPlus 将代码粘入

RewriteEngine On

RewriteCond %{HTTP_HOST} !^ [NC]

RewriteRule ^(.*)$ [R=301,L]

说明:上述规则是将站点所以访问域名都重定向到(规则中的域名请修改为自己的域名),如果仅想将绑定在站点上某个域名(如:)重定向到,规则如下:

RewriteCond %{HTTP_HOST} ^ [NC]

RewriteRule ^(.*)$ [R=301,L]

如果有多种需求,如abc.com跳转到 qwe.com跳转到,规则如下:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^abc.com$ [NC]

RewriteRule ^(.*)$ [R=301,L]

RewriteCond %{HTTP_HOST} ^qwe.com$ [NC]

RewriteRule ^(.*)$ [R=301,L]

根据自己的需要进行添加修改,然后上传到服务器wwwroot目录,改名为.htaccess即可

win虚拟主机设置301跳转方法:

手动设置的(没有自动生成)

1、进入主机控制面板,进入ISAPI筛选器设置,点击"开启自定义URL静态化支持"按钮。

2、待开启伪静态功能后,进入FTP文件管理,找到\others\discuz\httpd.conf 修改这里面的规则。

3、示例代码:

RewriteCond %{HTTP:Host} ^abc.com$

RewriteRule (.*) [NC,R=301]

#第一条表示要做跳转的域名,第二条表示要跳转到的域名

#如果有很多域名要做跳转,那么可以将第一条规则改为

RewriteCond %{HTTP:Host} !^

这样,就表示非的域名访问都会跳转到 #多个域名做跳转的第二种方法是,首先复制多个 RewriteCond 项,将域名改好 除了最后一项,其余的 RewriteCond 项最后都要加个参数 [OR]即可。

注意:现在很多虚拟主机都自带301的配置,可以在主机控制面板上生成代码信息,然后按照上面的提示进行301重定向。

②:window独立服务

Win独立服务301设置(win2003、win2008):

1、IIS服务器实现301重定向

打开IIS,右键-属性-网站-IP地址那里点编辑增加一个站点,然后绑定一下主机头,也可以绑定更多的闲置域名。如图所示:

打开IIS,首先新建立一个站点,随便对应一个目录E:\wwwroot\301web。该目录下只需要2个文件,一个

default.html,一个404.htm。在欲重定向的网页或目录上按右键;选中“重定向到URL”;在对话框中输入目标页面的地址;切记,记得选

中“资源的永久重定向”;当然,最后要点击“应用”,完成。如下图所示:

注意:win2003跟win2008都是使用IIS服务器,所以301重定向的步骤方法是一样的。

③:Linux独立服务器

Linux独立服务器301设置(红帽企业版、centos):

我用的是红帽企业版,用的是源码包装的Web环境。然后我进入Linux服务器,找到apache的主配置文件 httpd.conf , 我的apache服务器下有多个虚拟主机,我找到我要做301重定向的虚拟主机,然后添加如何的代码(代码是完整的):

1、进入Linux服务器,然后找到httpd.conf的Apache 主配置文件,下图红色框是我所在的完整位置,蓝色框是内容,也就是命令pwd现实所在位置,ls查询当前位置的内容。

既然找到主配置文件了,我们通过命令vi httpd.conf 编辑一下,在最后添加如下完整的代码。要找到配置的那个虚拟主机然后添加代码, 不要乱添加。

ServerName

ServerAdmin webmaster@dummy-host.example.com

LogLevel warn

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerName abc.com

ServerAdmin webmaster@dummy-host.example.com

RewriteEngine on

RewriteRule ^(.*)$ [R=301,L]

LogLevel warn

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

注意:不同形式安装的apache 其路径是不同的,有源码包、有YUM等安装方式,两种马路是不一样的,建议新手联系空间商并实施301重定向。

④:绑定/本地DNS

如果具有对本地DNS记录进行编辑修改的权限,则只要添加一个记录就可以解决此问题。若无此权限,则可要求网站托管服务商对DNS服务器进行相应设置。

⑤:DNS服务器的设置

若要将blog.abc.com指向,则只需在DNS服务中应增加一个别名记录,可写成:blog IN CNAME 。

如需配置大量的虚拟域名,则可写成:* IN CNAME .

这样就可将所有未设置的以abc.com结尾的记录全部重定向到上。

服务器301重定向的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于301重新定向、服务器301重定向的信息别忘了在本站进行查找喔。

取消
扫码支持 支付码