这里说明一点,不同的服务器设置的方法不一样,目前我们主要看到的有几种服务器类型,比如apche、iis、ngix等,针对这些服务器,我们把一些错误的步骤拿出来进行分析,具体步骤在网上有很多。
其实对于虚拟主机来讲,其实就是一键设置,不需要弄什么源码之类的,因为平台上面有面板设置选项,就比如我们熟悉的宝塔面板,其实在里面有一件设置,包括西域数码、腾讯云、华为云、阿里云、百度云等众多服务器供应商平台,以阿里云为例,从后台中我们可以看到,有301设置的选项,其实在这里设置就行了,具体不赘述。

我们讲一讲apche服务器设置问题,具体分为两个部分,一个是设置文件httpd.conf,注意这个文件是apche的配置文件,所有的服务问题都在这里设置,包括404设置,404状态码设置我们已经讲过,具体可以点击这篇文章404设置。
1 apache服务器设置
设置apche 301重定向,首先我们先打开httpd.conf,把LoadModule rewrite_module modules/mod_rewrite.so最左边的#号去掉,表示开启的意思,说明一下这个是加载重写模块的意思,也就是把一个网址重写成另外的网址,如果不设置这个,本质上状态码不会生效。
另外需要开启AllowOverride,值为all,当然默认这个是设置为all,处于开启的状态,这个不用担心。设置完httpd.conf之后就已经完成一半了,很多网友并不记得这个文件的配置,因此即使看到有跳转的迹象,但状态码还是200,这个就不对了。具体查询我们将在下一篇讲解。
接着就是创建一个.htaccess文件,这个实际上就是改变httpd.conf文件用的,这个文件实际就是一个权限文件,允许你设置对目录及文件的权限问题,除了重定向之外还可以封禁某个ip以及所有的ip等等,不过这个需要慎重,一旦禁掉,就不能在访问了。
针对301,我们把一下代码放入到文件中即可。
<IfModule mod_rewrite.c>
RewriteEngine On //重写引擎开启
RewriteCond %{HTTP_HOST} ^xxx.com$ [NC] //需要重写的网址
RewriteRule ^(.*)$ http://www.xxx.com/$1 [R=301,L] //重写规则
</IfModule>
2 iss服务器配置
这个是微软开发的一款服务器,设置也比较简单,打开iss服务管理界面,点击相应的网站,在右边有很多设置选项,选择重写URL,点击进去配置。
注意不同的iss版本其界面是不一样的,需要注意配置的选项,比如在老版本中有“上面输入准确的 URL(X)”的选项,通常首页重定向不需要选择,否则所有页面都跳转到首页。
另外可以通过设置web.config进行重定向,比如加入一下代码段
<system.webServer>
<rewrite>
<rules>
<rule name="301Redirect" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^xxx.com$" />
</conditions>
<action type="Redirect" url="http://www.xxx.com/{R:0}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>

3 nginx服务器配置
nginx服务器配置和apche有所不同,这个文件代码量比较少,我们先打开文件,开启server {}服务,比较简单的做法,是加入一下代码段:
server{
listen 80;
server_name xx.cn
rewrite ^/(.*) http://www.xx.cn/$1 permanent;
}
以上是关于301重定向在不同服务器的设置问题。
顶一下
(0)
踩一下
(0)