Apache服务器301重定向详解

Apache服务器301重定向详解
Apache服务器301重定向详解

Apache服务器301重定向详解

301重定向(301 redirect)又叫301代表永久性转移(Permanently Moved),将各种网络请求重新定个方向转到其它位置,是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。下面说下两种情况下的301重定向方法。

一、WWW域名的重定向。这是我们大多数站长建站后都会面对的一种情况。那么如何做呢?将不带www重定向带www的地址,以https://www.360docs.net/doc/9511905053.html,和https://www.360docs.net/doc/9511905053.html,请看如下代码:

deny from all

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(baidu\.com)(:80)? [NC]

RewriteRule ^(.*) https://www.360docs.net/doc/9511905053.html,/$1 [R=301,L]

order deny,allow

如果是将带www的定向到不带www的情况,写法和上面差不多,就不多说了。将上面代码复制到记事本,然后重命名为.htaccess,上传到网站的根目录即可。如果是本地不支持此命名,可以先传到根目录再修改文件名称即可。二、网页的重定向。这里也可以分为两种情况。

第1种,只有少量网页需要重定向,方法如下:

deny from all

Redirect permanent https://www.360docs.net/doc/9511905053.html,/old.html https://www.360docs.net/doc/9511905053.html,/new.html

order deny,allow

第2种,举例网站的导航的一个栏目改了路径时的重定向方法。原路径为/old/,新路径为/news/的情况如下:

deny from all

Redirect permanent https://www.360docs.net/doc/9511905053.html,/old/ https://www.360docs.net/doc/9511905053.html,/new/

order deny,allow

同样,写在记事本,改名为.htaccess,同样上传到网站根目录即可。本地无法改名的时候入第一种中说到的方法易名。

以上就是Apache服务器实现301重定向的方法。文章写的很简单,相信只要是有这方面需求的站长朋友们都是能够看得懂的,希望对大家会有所帮助。

什么是302重定向及操作方法

301和302 Http状态有啥区别? 301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于:301 redirect: 301 代表永久性转移(Permanently Moved),302 redirect: 302 代表暂时性转移(Temporarily Moved ),当然Http 状态200 标示没有任何问题发生。 这两种转移在使用的时候有啥好处或者问题? 301 重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。302 重定向是临时性转移。 在前些年,不少Black Hat SEO曾广泛应用这项技术作弊,目前,各大主要搜索引擎均加强了打击力度,象Google前些年对https://www.360docs.net/doc/9511905053.html,以及近来对BMW德国网站的惩罚。即使网站客观上不是spam,也很容易被搜寻引擎容易误判为spam而遭到惩罚。 研究搜索引擎优化(SEO)的人,应该都知道,301,302使用不当,或者灵活使用会有不错的效果的,比如参看下面文章: 302转向与网址劫持 301转向和网址规范化301重定向的实现方法 51window提供的301转向的代码 一个网站十几个域名的重定向经验谈 几个常用的301重定向 如果是运维人员,配置WEB服务器的一些设置就可以实现跳转,比如下面一些关于IIS实现重定向的文章 将请求重定向到文件、目录或程序(IIS 6.0) https://www.360docs.net/doc/9511905053.html,/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/fbcccfce-6695-4f92-bd55-869d85ff49fb.mspx?mfr=true 重定向参考(IIS 6.0) https://www.360docs.net/doc/9511905053.html,/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/41c238b 2-1188-488f-bf2d-464383b1bb08.mspx?mfr=true 其他WEB服务器也可以通过设置实现跳转,我就不罗列了。 从技术人员来说我们比较常用的跳转方法有以下几种: 我们使用Fiddler 工具来监控的下面提到的几种方法,看跳转过程中HTTP状态码是301?302?200?: 方法1:Response.Redirect("Test.aspx"); 状态码302 临时性跳转 方法2: meta fresh: 这在2000年前比较流行,不过现在已很少见。其具体是通过网页中的meta指令,在特定时间后重定向到新的网页,如果延迟的时间太短(约5秒之內),会被判断为spam。这种跳转方式,整个跳转过程中,页面Http状态都是200,即,页面没有任何错误发生。 方法3:Server.Transfer("Test.aspx"); 这种跳转方式,整个跳转过程中,页面Http状态都是200,即,页面没有任何错误发生。

php环境如何做301重定向

php做定向简单。 你试下这个操作,应该可以的: 操作方法: 第一步、建立tiaozhuan.asp文件。使用记事本或Dreamweaver建立名称为tiaozhuan.asp的网页文件,并清除里面的所有内容输入一下内容: ************************不包含此行************************************ <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% Response.Status="301 Moved Permanently" Response.AddHeader "Location","https://www.360docs.net/doc/9511905053.html,/index.html" Response.End %> ************************不包含此行************************************ 注意:http://后面的网址请更改为你网站的网址,首页文件名请更改为你现在使用的网站首页的文件名。保存tiaozhuan.asp文件并退出。 第二步、设置默认首页。进入空间管理面板,不同的空间会有不同的操作方法,但都是大同小异,我们要在设置在里面找到设置默认首页的功能。在默认首页文件名列表的最前面输入tiaozhuan.asp然后确定即可。 第三步、文件上传。将刚刚建立的tiaozhuan.asp文件用FTP上传到你的空间中。 第四步、打开首页查看是否成功。 有一个细节不知道大家有没有注意到,就是我没有通过在首页文件中直接添加上面的代码,而是采用重新建立文件的方法来实现301重定向的功能。当然,有的朋友也许是动态网站或真正的首页文件不是这个名称,大家可以按照网站本身的条件进行更改。另外,经过笔者测试,如果将上面的代码加入到ASP首页文件中有时会造成错误的现象,那就是“死循环”。因为上面的代码如果加入到ASP首页文件的最顶端就会造成打开网站先访问首页文件然后执行首页文件最顶端的代码进行跳转到自身,然后再次执行“先访问首页文件然后执行首页文件最顶端的代码进行跳转到自身”所以就会出现浏览器忙乱的现象,无法打开网页。如果将大门放入到ASP首页文件的最顶端,也会出现类似上面的现象,所以我们选择重新建立文件进行301重定向。 在这个实战中,我没有将301重定向到网站的根目录,而是直接定向到网站的index.html文件,大家也许会感到我的操作方法和别人的描述不太一样。因为这样做可以将所有的权重指向index.html页面,会使网站的首页排名又一定程度的权重提升,避免了权重的分散。再有一点原因就是刚才提到的“死循环”了。 综上,请按照第一至第四步进行操作,即可完美的完成网站定向,海纳百川,权重统一。大家可以触类旁通、自行思考,如果有N个域名指向同一个网站,那么是不是也可以通过这个方法来集中权重,避免权重不必要的流失呢?

监视并记录Apache网站服务器的运行

监视并记录Apache网站服务器的运行 LogFormat 指令承诺你告诉Apache你想要记录要求的哪些方面。而你仍需附加的指令来告诉Apache在哪里记录那些信息,这在下一章中将会介绍。下面的例子显示了两种最受欢迎的格式的配置:一般日志格式和整合日志格式。当Apache收到一个要求,他将会用相应的要求属性来替代以%为前缀的每一个域。假如您正在使用一般日志格式,您的日志文件里 尽管有附件提供日志格式的详尽索引,下表描述了一些最为重要的域: # %h: 客户端(例如,扫瞄器)向服务器发出连接要求时自己的当时的IP地址或域名(需开启HostNameLookups)。 # %u: 使用方式认证用户时,记录下的用户的编号。 # %t: 服务器同意到连接要求的时刻。 # %r: 客户端发出的原始连接要求中的文本信息,包含所使用的方法。 # %>s: 服务器应答扫瞄器后的返回状态代码,200表示要求成功。. # %b: 服务器应答扫瞄器发出的单个要求的回传对象的内容大小(字节为单位),不统计数据包头部字节。 整合日志格式在一般日志格式的基础上扩展出了两个附加的域。定义为: # %{Referer}i: 连接要求数据包包头,包含指向当前页面的文档关联信息。 # %{User-agent}i: 用户代理连接要求数据包包头,包含客户扫瞄器的信息。 创建一个自定义日志文件 您可能会想创建Apache自带以外的新的日志文件。下面的例子将运用CustomLog来创建一个新的日志文件,并储存由一个之前定义好的日志格式,即前一章提到的common,所定义的信息。您还能够用格式本身的定义来替换昵称。一个附加的,更为简单的指令是Transferlog,它只同意最后一个LogFormat指令提供的定义。

搭建Apache服务器

实训时间:2010年6月28日上午 搭建Apache服务器 实验目的 1.掌握配置用户个人站点的方法; 2.掌握配置目录访问控制与用户认证的方法; 3.掌握基于IP地址不同端口的虚拟主机的架设方法; 4.掌握基于不同IP地址的虚拟主机的架设方法; 实验内容 根据Apache服务器的默认设置,Web站点的相关文件保存在/var/www目录,而Web站点的日志文件保存于/var/log/httpd目录。安装安装Apache服务并进行相应的设置。 实验准备 两台计算机,一台安装RHEL Server5,另一台安装Windows XP。 一、建立Apache服务器的应用环境 1.安装Apache服务器软件包 (1)以超级用户登录到字符界面,输入“rpm -qa|grep httpd”命令,查看是否已安装Apache软件包,如没安装,则进行下一步。 (2)利用mount命令挂载安装光盘,依次输入如下命令: mount -t iso9660 /dev/cdrom /mnt rpm –ivh /mnt/Server/apr-1.2.7-11.i386.rpm rpm –ivh /mnt/Server/apr-util-1.2.7-6.i386.rpm rpm –ivh /mnt/Server/httpd-2.2.3-6.el5.i386.rpm 2.设置RHEL Server5计算机,其IP地址为192.168.0.10,子网掩码为255.255.255.0;允 许www服务通过防火墙,关闭SELinux,并启动Apache服务器。 (1)超级用户在字符界面输入“setup”命令,启动文字模式的系统设置程序。使用方向键将光标移至“Network configuration”(网络配置)选项,按回车,显示网卡信息。(2)选中网卡,再次按回车,出现网卡配置界面,按Tab键将光标移至“Use DHCP” 后的“*”,按[Space]键取消选择,然后在“Static IP”后输入IP地址“192.168.0.10”,在“Netmask”后输入掩码“255.255.255.0”。然后按Tab键将光标移至“OK”按钮按回车键,保存网卡设置。 (3)回到网卡设备选择界面,移动光标至“Quit”按回车。回到工具选择界面,选择“Firewall configration”(防火墙配置)选项按回车,出现防火墙配置界面,移动光标至“Disabled”,并按【Space】键选择此项。 (4)移动光标至“Customize”按钮按回车,出现防火墙自定义配置界面,选中“www” 选项。最后关闭此程序。 (5)为让系统设置起效,重启计算机。 3.测试Apache服务器。 在Windows计算机中启动IE浏览器,在地址栏中输入RHEL Server5主机的IP地址,将显示/var/www/html目录下index.html文件的内容。 二、配置个人Web站点。 1.配置Apach服务器,允许Linux用户架设其个人Web站点。 超级用户首先备份配置文件httpd.conf,输入命令“cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.back”,以保证即使Apache服务器的配置错误也可以恢复初始设置。(1)输入“vi /etc/httpd/conf/httpd.conf”。 (2)在vi 命令模式下输入“/mod_userdir.c”按回车,查找文件中的“mod_userdir.c”字符

nginx不带www到www域名的重定向

对于单一入口的程序如何做301重定向 由于网站的url由动态改为了伪静态,原先的动态网址依然能够访问,导致原先的url的权重无法转移,所以对原来的url做301重定向,并在百度站长中提交网站改版请求。 网上的教程都是直接根据文件重定向的,对于单一入口的程序不适用,所以写下次教程。 示例: if ($args ~* mod=item&act=view&id=(\d+) ) { rewrite ^/(.*)$ http://$host/item/$arg_id.html? permanent; } $args是当前url问号后面的部分,相当于$query_string $arg_id是id的值,格式为$arg_ rewrite是url重写命令 permanent代表的是返回301永久重定向状态码 $host为当前网站的域名部分 结尾的问号代表不会将url后面的参数一起带过去 ^和$是代表的是正则匹配 if条件中的(\d+)代表的是数字参数,如777 注意:nginx中if命令不能嵌套,不能有多条件 if条件中的等号只有一个 注意if的空格问题

if条件中可以有多条url重写语句 重定向是基于文件的,示例中是适用于index.php?mod=a&act=b的结构如:rewrite 文件A 重定向到某地址 示例: rewrite ^/good.php$ http://$host permanent; rewriet ^/good1.php$ http://$host/ permanent; 如果需要对网站的域名进行重定向,可参考以下示例: 将不带www的域名重定向到带www的域名 server{ ...... server_name https://www.360docs.net/doc/9511905053.html, https://www.360docs.net/doc/9511905053.html, ...... if ($host = https://www.360docs.net/doc/9511905053.html,) { rewrite ^(.*)$ https://www.360docs.net/doc/9511905053.html, permanent; } }

正确配置301的各种方法

这篇文章列举了四种情况下,配置网站301全站重定向的方法。这四种方法均是经过我个人网站实践验证过,绝对可用。下面的步骤中的例子,设置的是把不加www的域名转向到加www的域名。 1.第一种情况,如果你有服务器或者vps,且系统是windows系统的。 在iis下,可以很简单的设置实现全站重定向。 具体方法是:在VPS里把https://www.360docs.net/doc/9511905053.html, 域名的网站搭建好以后,按照同样的方式搭建一个https://www.360docs.net/doc/9511905053.html,的网站。然后打开“iis”。在https://www.360docs.net/doc/9511905053.html,的网站上鼠标右键打开选择属性,选择“主目录”标签,然后按照这个图设置 2.第二种情况,如果你的系统是Linux的。 做整站301跳转,很简单。如下修改文件httpd.conf或者.htaccess文件保存就可以了: RewriteEngine On RewriteCond %{HTTP_HOST} ^https://www.360docs.net/doc/9511905053.html,[NC] RewriteRule ^(.*)$ https://www.360docs.net/doc/9511905053.html,/$1 [L,R=301] 3.第三种情况,如果你是虚拟主机用户,如果你有子目录,恭喜你,也可以整站301 重定向。具体方法是: 1.新建404.asp,把下面代码放到新建的404文件中保存。 代码 <%@ Language=VBscript %> <% Dim PageURL PageURL="http://"&Request.ServerVariables("HTTP_HOST")&request.ServerVar iables("URL")&"?"&Request.ServerVariables("QUERY_STRING") PageURL = Replace(PageURL, "https://www.360docs.net/doc/9511905053.html,/404.asp?404;https://www.360docs.net/doc/9511905053.html,: 80","") //修改为你的老域名 Response.Status="301 Moved Permanently"

Linux下Apache服务器的安装和配置

【实验8】Apache服务器的安装和配置 一、实验目的: 1.掌握Apache Web服务器的安装和配置。 2.使用虚拟主机在同一台服务器上架设多个网站。 二、【实验环境】 1.虚拟机软件VM Ware 6.0,Redhat Enterprise Linux虚拟机或光盘镜像文 件。 2.2台以上机器组成的局域网。 三、【实验原理】 (一)Apache服务简介 Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。 Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web 服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。 (二)虚拟主机 所谓虚拟主机,也叫“网站空间”就是把一台运行在互联网上的服务器划分成 多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务 器(支持WWW、FTP、E-mail等)功能。一台服务器上的不同虚拟主机是各自 独立的,并由用户自行管理。 虚拟主机技术是互联网服务器采用的节省服务器硬体成本的技术,虚拟主机 技术主要应用于HTTP服务,将一台服务器的某项或者全部服务内容逻辑划分 为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬体资源。如果 划分是系统级别的,则称为虚拟服务器。

(三)Linux中虚拟主机的分类 1、基于IP地址的虚拟主机 如果某公司有多个独立的IP地址可用,那么可以用不同的IP地址来配置虚拟主机。 2、基于端口的虚拟主机 如果只有一个IP地址,但是要架设多个站点,可以使用端口来区分,每个端口对应一个站点。这样配置的话,用户在访问的时候必须在 URL中指明端口号才能访问相应的网站。 3、基于名称的虚拟主机 使用基于IP地址或者端口的虚拟主机,能够配置的站点数目有限,而使用基于名称的虚拟主机,可以配置任意数目的虚拟主机,而不需要 额外的IP地址,也不需要修改端口号。 四、实验步骤 本实验请勿使用【系统】→【管理】→【服务器设置】中的【HTTPD】工具来配置,否则后果自负! (一)Apache服务器的启动 1、测试是否已安装Apache服务器: [root@localhost ~]#rpm –qa httpd 2、启动Apache服务器: [root@localhost ~]#service httpd start (二)基于端口的虚拟主机的配置 1、在/etc/httpd目录中,建立一个名为vhostconf.d的子目录,用来存放虚拟 主机的配置文件。 2、在/var/www目录中,建立一个名为websites的子目录,用于存放网站源 文件;在website目录下再建立ipvhost1和ipvhost2文件夹,用于区分各 个站点。

Apache服务器配置实验报告

在Linux下配置Apache服务器 一、实验目的 完成本次实训,将能够: ●配置基本的Apache服务器 ●配置个人用户Web站点。 ●配置虚拟目录别名功能。 ●配置主机访问控制。 ●配置用户身份验证功能.。 ●配置基于IP地址的虚拟主机. 二、实验环境 1、RedHat Linux4AS. 2、Apache 2.0 三、实验内容 1.配置基本的Apache服务器 2.配置个人用户Web站点。 3.配置虚拟目录别名功能。 4.配置主机访问控制。 5.配置用户身份验证功能.。 6.配置基于IP地址的虚拟主机。 四、实验要求 在Linux操作系统下配置Apache服务器。 五、注意事项 1.在修配置文件下注意区分大小写、空格。 2.在每次重新开机后都必须启动Apachec服务器。 3.在每次修改完主配置文件后保存起来,必须重启Apachec服务器,如果不重启会 导致配置无效,最终导致实验失败。 六、实验步骤 1、检测是否安装了Apache软件包: A、首先为服务器网卡添加一个固定的IP地址。 B、在Web浏览器的地址栏中输入本机的IP地址,若出现Test Page测试页面(该 网页文件的默认路径为var/www/html/index.html)如下图1所示就说明Apache 已安装并已启动。

另一种方法是使用如下命令查看系统是否已经安装了Apache软件包: [root@rhe14~]# rpm –aq | grep httpd Httpd-suexec-2.0.52-9.ent Httpd-manual-2.0.52-9.ent System-config-httpd-1.3.1-1 Httpd-devel-2.0.52-9.ent 出现以上内容表明了系统已安装Apache软件包。 2、安装Apache软件包 超级用户(root)在图形界面下选择“应用程序”|“系统设置”|“添加/删除应用程序”命令,选择“万维网服务器”软件包组,在单击“更新”按钮就可以安装与Apache相关的软件包。 3、Apache的基本配置 (1)打开终端输入[root@rhe14~]# /etc/rc.d/init.d/httpd start //启动Apache 或者 [root@rhe14~]# apachectl start //启动Apache [root@rhe14~]# apachectl stop //停止Apache服务 [root@rhe14~]# apachectl restart //重启Apache服务 [root@rhe14~]# apachectl configtest //测试Apache服务器配置语法(2)在httpd.conf将Apache的基本配置参数修改、将一些注释的语句取消注释,或将某些不需要的参数注释掉。 (3)将包括index.html在内的相关网页文件复制到指定的Web站点根目下(var/www/html/index.html) (4)重启httpd进程 (5) 在Web浏览器下输入配置的ip地址出现如下图2,那表明基本配置成功了:

IIS设置301重定向

IIS设置301重定向 IIS服务器下做301永久重定向设置方法。 IIS6设置301重定向: 1.新建一个站点,对应目录如E:\wwwroot\301web。该目录下只需要1个文件,即index.html或者加个404.htm。绑定要跳转的域名,如图: 2.在IIS中选中刚才我们建立的站点,右键-属性-主目录,选择重定向到,输入

网址如:xxxx,同时注意选中下面的资源的永久重定向选项。 3.到此,我们已经完成了将xxxx这个域名301重定向到xxxx的工作。 注意问题: “上面输入准确的URL(X)”这个选项建议不要选。 不选的结果是: 当输入xxxx转到了xxxx, 当输入xxxx/sanwen/suibi/时,转到了xxxx/sanwen/suibi/。 选上的结果是: 当你输入xxxx或者xxxx/sanwen/suibi/都会转到xxxx。 好了,如果只是想把不带www的转到带www的或者其他没有用过的域名转到正在使用的域名,这样就可以了。但是如果你要的域名已经做过网站,想要把权重传递给新网站,可以参考下面这个方法: 第一步同上,主要是第二步,如图:

注意红色字体的部分,在重定向到地址的后面多了$S$Q字符,即写成了xxxx$S$Q。“上面输入准确的URL(X)”这个选项也打了勾。 对于$S$Q字符,这里解释一下: $S 将请求的URL 的后缀传递给新的URL。后缀是用重定向的URL 代替之后,初始URL 中所保留的部分。 如果未设置 EXACT_DESTINATION 标志,则结果目标URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。 $Q 将初始URL 中的参数(如 querystring 参数)传递至新的 URL,包括问号(?)。如果不加上$S$Q字符的话,内页的301都会跳转到首页,加上$S$Q字符的目的就是内页也能准确的跳转到新域名的对应内页。 好了,这样就完成了301永久重定向的设置,设置好之后最好能测试下是否返回的是301值,推荐个网址:seoconsultants/tools/headers。 百度对301的反应并不像想象中那么慢,第二天就收录了xxxx这个页面,快照最新。当然,快照的内容是xxxx的内容,而不是301web里index.html的内容。 IIS7设置301重定向: 非常简单。选择中网站,”HTTP重定向“,勾选”将请求重定向到此目标“,

Apache服务器的安装与配置

Apache服务器的安装与配置 一、安装Apache 双击可执行文件apache_1.3.33-win32-x86-no_src.exe,将Apache服务器软件安装至C:\Apache目录下。 二、设置C:\apache\conf\httpd.donf文件 修改Apache的核心配置文件c:\apache\conf\httpd.conf(说明一点:“#”为Apache的注释符号)。修改方法如下: 1、寻找到ServerName。这里定义你的域名。这样,当Apache Server运行时,你可以在浏览器中访问自己的站点。如果前面有#,记得删除它。 2、寻找到ServerAdmin。这里输入你的E-Mail地址。 (以上两条在安装时应该已经配置好了,所以不必改动,这里介绍一下,主要是为了日后的修改) 3、寻找到。向下有一句Options,去掉后面所有的参数,加一个All(注意区分大小写!A 大写,两个l小写。下同。);接着还有一句Allow Override,也同样去掉后面所有的参数,加一个All。 AllowOverride All Options All Order allow,deny Allow from all 4、寻找到DocumentRoot。这个语句指定你的网站路径,也就是你主页放置的目录。你可以使用默认的,也可以自己指定一个,但记住,这句末尾不要加“/”。此外注意,路径的分隔符在Apache Server里写成“/”。(将DocumentRoot "C:/apache/htdocs"改为DocumentRoot "C:/try") 5、寻找到DirectoryIndex。这就是你站点第一个显示的主页,在index.html的后面加入index.htm index.php index.php3 index.cgi index.pl。注意,每种类型之间都要留一空格!这里添加好了,以后就不用再麻烦了。 6、port(端口号),如果没安装IIS的话,就保持80不要变,否则,就要改一下(因为IIS的WEB服务占据了80),可以改成81等等。 三、Apache的手动启动和停止 Net start apache启动apache服务,Net stop apache停止apache服务。

301和302重定向的区别

重定向的方法其实是有很多的,但不同的方法会出现不同的结果,而且区别也是非常大的。目前,根据WEB服务器返回给浏览器的HTTP状态码,重定向主要分为301永久重定向、302临时重定向,两种重定向是根据不同情况来做的,下面就详细的对两种重定向详细的说明一下。 ①:301永久重定向 首先,301永久重定向。这个状态码告诉用户、搜索引擎、浏览器,该资源已经永久性的移动到另一个位置(旧版本页面永久重定向到新版本页面),而且没有恢复原位的打算。301永久重定向最适合目录转移,推荐使用301重定向! ②:302临时重定向 然后,302临时重定向。这个状态码告诉用户、搜索引擎、浏览器,该资源已经暂时性的移动到另外一个位置(旧版本页面临时重定向到新版本页面),这种移动不会当作永久性,而且会恢复原来的位置,但一些情况下适合使用302重定向。 302重定向对手机站优化是有一定的好处,百度官方给的建议:比如减少内容死链,如果没有内容,最好通过HTTP状态码指定,如404、403等; 如果内容死链希望重定向到首页,最好通过302跳转,不要使用javascript跳转。此时可以发现302重定向对手机站优化是有好处的。 注意:两种形式的重定向都会将用户、搜索引擎发送到新的位置(页面),但搜索引擎对待这两个HTTP状态码却不同。当搜索引擎看到301状态码的时候,会判断旧版本页面将权重或任何其他的指标永久转移到新页面。当搜索引擎看到302HTTP状态码的时候,会假设它不应该将旧页面的历史链接跟权重转移到新的页面,意思是转移后还是会转移回来的。另外,如果做301永久重定向,会导致搜索引擎从索引上(百度、谷歌)删除旧页面并用新页面代替。

西部数码301重定向

301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。 虚拟主机设置方法: 若是我司windows虚拟主机,请按以下流程操作: 1.登录管理中心-主机管理-管理-ISAPI筛选器设置-开启自定义的URL静态化支持 2.系统提示成功后,点击管理中心-文件管理,找到others\discuz\httpd.conf 文件,点击最右边下载图标将此文件下载到您的计算机 3.用记事本打开该文件,在RepeatLimit 32下增加如下两行(假设主机上绑定有三个域名 https://www.360docs.net/doc/9511905053.html,,https://www.360docs.net/doc/9511905053.html,, https://www.360docs.net/doc/9511905053.html, ,需要的是将所有的域名都301重定向至https://www.360docs.net/doc/9511905053.html,,则规则如下:) RewriteCond %{HTTP:Host} !^https://www.360docs.net/doc/9511905053.html,$ RewriteRule (.*) https://www.360docs.net/doc/9511905053.html,$1 [NC,R=301] 说明:将以上规则中的两个https://www.360docs.net/doc/9511905053.html,替换为您自己的域名即可,两个写一样。 4.将修改好的文件用FTP或者管理中心文件管理的在线上传功能上传到others\discuz\目录替换原文件即可 若是我司linux虚拟主机,请按以下流程操作: 1.在管理中心-主机管理-管理-文件管理中打开在线文件管理器 2.点击文件管理器菜单中的“新建文件”,输入文件名 .htaccess 3.双击刚才新创建的.htaccess文件,输入以下内容: RewriteEngine On RewriteCond %{HTTP_HOST} !^https://www.360docs.net/doc/9511905053.html,$ [NC] RewriteRule ^(.*)$ https://www.360docs.net/doc/9511905053.html,/$1 [R=301,L] 说明:https://www.360docs.net/doc/9511905053.html,请替换为您新的目标域名,这个规则将会将您的主机绑定的所有域名301重定向到 https://www.360docs.net/doc/9511905053.html,

apache实验

RHCE实验文档— APACHE配置 实验一: 实现安全的APACHE( https ) 实验环境: Redhat 6.0平台 软件包: httpd-2.2.15-5.el6.x86_64.rpm mod_ssl.x86_64 1:2.2.15-5.el6.rpm 实验要求: 搭建一个基本的web服务,并且能够实现通过https协议访问. 步骤一: 安装软件包 [root@station ~]# yum -y install httpd mod_ssl 步骤二: 查看配置文件中证书路径是否启用. [root@station ~]# vim /etc/httpd/conf.d/ssl.conf # certificate can be generated using the genkey(1) command. SSLCertificateFile /etc/pki/tls/certs/localhost.crt –公钥 # Server Private Key: # If the key is not combined with the certificate, use this # directive to point at the key file. Keep in mind that if # you've both a RSA and a DSA private key you can configure # both in parallel (to also allow the use of DSA ciphers, etc.) SSLCertificateKeyFile /etc/pki/tls/private/localhost.key –私钥 注:红色字体分别指出了公钥和私钥的路径,在企业六中默认自动创建了这两个证书. 可以直接使用这两个自签证书. 步骤三:创建用于测试的主页面: [root@station ~]# echo "this is test for https" >/var/www/html/index.html 步骤四:启动服务并将服务设置为开机自启动 [root@station ~]# service httpd start Starting httpd: [ OK ] [root@station ~]# chkconfig httpd on 步骤五:测试 总结:实验到第五步就已经实现了一个最基本的https的web服务器,在实际生产环境中,证书部分可以通过搭建CA证书服务器来签发,或者向第三方的权威CA服务器来申请,从而提高证书的可信性.如果使用第三方的证书时,大家需要注意调整证书的路径. 实验二:创建基于不同域名的虚拟主机 实验环境: Redhat 6.0平台 软件包: httpd-2.2.15-5.el6.x86_64.rpm

Apache的ProxyPass指令详解

描述:将远程服务器映射到本地服务器的URL空间 语法:ProxyPass [路径] !|url [键=值键=值...]] [nocanon] 上下文:server config, virtual host, directory 状态:扩展 模块:mod_proxy 该指令可以将远程服务器映射到本地服务器的URL空间;本地的服务器并不是扮演传统意义上的代理服务器的角色,而是表现为远程服务器的一个镜像。此本地服务器常被成为反向代理(reversed proxy)或者是网关(gateway)。路径是指本地虚拟路径的名字;url指远程服务器的一个部分URL,不能包含查询字符串。 注意:在使用ProxyPass指令的时候,ProxyRequests指令通常都应该是关闭的。 假设本地服务器的地址是https://www.360docs.net/doc/9511905053.html,/ ,那么 ProxyPass /mirror/foo/ https://www.360docs.net/doc/9511905053.html,/ 将会把对https://www.360docs.net/doc/9511905053.html,/mirror/foo/bar的本地请求内部转换成到https://www.360docs.net/doc/9511905053.html,/bar的代理请求。 其中,!指令当你不想对某个子目录进行反向代理的时候就有用了,例如: ProxyPass /mirror/foo/i ! ProxyPass /mirror/foo https://www.360docs.net/doc/9511905053.html, 将会把所有的/mirror/foo请求重定向到https://www.360docs.net/doc/9511905053.html,除了对/mirror/foo/i的请求。 注意: 顺序很重要:排除的指令必须在一般的ProxyPass指令之前。 和Apache 2.1一样,具备了使用到后端服务器的线程池的能力。使用“键=值”的参数便可调节线程池的分配。硬性最大值(Hard Maximum)的默认值为当前MPM中每个进程的线程数量。在Prefork MPM中,该值总是为1,在Worker MPM中,该值受ThreadsPerChild控制。 设置min可以决定有多少到后端服务器的链接始终打开。根据需要最多创建数量为柔性最大值(Soft Maximum),也就是smax的链接。任何超出smax数量的链接都会指定一个生存时间也就是ttl。Apache不会同时创建超过硬性最大值(或max)数量的到后端服务器的链接。 ProxyPass /example https://www.360docs.net/doc/9511905053.html, smax=5 max=20 ttl=120 retry=300 参数默认值描述 min 0 到后端服务器的总是打开的链接最小数。 max 1…n 允许连接到后端服务器的硬性最大链接数。硬性最大值的默认值为当前MPM 中每个进程的线程数量。在Prefork MPM中,该值总是为1,在Worker MPM中,该值受ThreadsPerChild控制。

三大WEB服务器对比(apache_,lighttpd,nginx)

三大WEB服务器对比分析(apache ,lighttpd,nginx)一.软件介绍(apache lighttpd nginx) 1. lighttpd Lighttpd是一个具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。lighttpd 是众多OpenSource轻量级的web server中较为优秀的一个。支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能。 Lighttpd使用fastcgi方式运行php,它会使用很少的PHP进程响应很大的并发量。 Fastcgi的优点在于: ·从稳定性上看, fastcgi是以独立的进程池运行来cgi,单独一个进程死掉,系统可以很轻易的丢弃,然后重新分配新的进程来运行逻辑. ·从安全性上看, fastcgi和宿主的server完全独立, fastcgi怎么down也不会把server搞垮, ·从性能上看, fastcgi把动态逻辑的处理从server中分离出来, 大负荷的IO处理还是留给宿主server, 这样宿主server可以一心一意作IO,对于一个普通的动态网页来说, 逻辑处理可能只有一小部分, 大量的图片等静态IO处理完全不需要逻辑程序的参与(注1) ·从扩展性上讲, fastcgi是一个中立的技术标准, 完全可以支持任何语言写的处理程序(php,java,python...) 2.apache apache是世界排名第一的web服务器, 根据netcraft(https://www.360docs.net/doc/9511905053.html,)所作的调查,世界上百分之五十以上的web服务器在使用apache. 1995年4月, 最早的apache(0.6.2版)由apache group公布发行. apache group 是一个完全通过internet进行运作的非盈利机构, 由它来决定apache web服务器的标准发行版中应该包含哪些内容. 准许任何人修改隐错, 提供新的特征和将它移植到新的平台上, 以及其它的工作. 当新的代码被提交给apache group时, 该团体审核它的具体内容, 进行测试, 如果认为满意, 该代码就会被集成到apache的主要发行版中. apache 的特性: 1) 几乎可以运行在所有的计算机平台上. 2) 支持最新的http/1.1协议 3) 简单而且强有力的基于文件的配置(httpd.conf). 4) 支持通用网关接口(cgi) 5) 支持虚拟主机.

服务器重定向方法

以前也没怎么关注301重定向,第一因为没有网站要重定向,第二对于不带www的域名我都是用的转发到带www的域名。不过一场风波之后,很多服务商已经不提供转发服务了,虽说易名现在还可以享用到免费的转发服务,但是却不能不带www的转发到带www的同时进行MX记录解析,这对于需要MX解析的朋友也是一大烦恼。 而且有些域名在国外,转发更是用不了,也只能进行301永久重定向了,不然搜索引擎是把不带www 的站和带www的站分开对待的,只是我们习惯于用带www的域名罢了。 在网络上看了些教程,再根据自己的实践,也终于搞定了IIS服务器上的301永久重定向设置问题。实现方法如下: 1.新建一个站点,对应目录如E:\wwwroot\301web。该目录下只需要1个文件,即index.html或者加个404.htm。绑定要跳转的域名,如图: 2.在IIS中选中刚才我们建立的站点,右键,属性,主目录,选择重定向到,输入网址如: https://www.360docs.net/doc/9511905053.html,,同时注意选中下面的资源的永久重定向选项。如下图:

3.到此,我们已经完成了将https://www.360docs.net/doc/9511905053.html,这个域名301重定向到https://www.360docs.net/doc/9511905053.html,的工作。 注意问题: “上面输入准确的URL(X)”这个选项建议不要选。 不选的结果是: 当输入https://www.360docs.net/doc/9511905053.html,转到了https://www.360docs.net/doc/9511905053.html,, 当输入https://www.360docs.net/doc/9511905053.html,/sanwen/suibi/时,转到了https://www.360docs.net/doc/9511905053.html,/sanwen/suibi/。 选上的结果是: 当你输入https://www.360docs.net/doc/9511905053.html,或者https://www.360docs.net/doc/9511905053.html,/sanwen/suibi/都会转到https://www.360docs.net/doc/9511905053.html,。 好了,如果只是想把不带www的转到带www的或者其他没有用过的域名转到正在使用的域名,这样就可以了。但是如果你要的域名已经做过网站,想要把权重传递给新网站,可以参考下面这个方法: 第一步同上,主要是第二步,如图:

Apache安全配置规范12-27

Apache安全配置规范2010年11月

概述 适用范围 本规范提出的安全功能要求和安全配置要求,适用于大部分Unix系统下的2.0.x、2.2.x版本的Apache服务器,可作为编制设备入网测试、安全验收、安全检查规范等文档的参考。安全配置要求 2.1账号 要求内容 以专门的用户帐号和组运行Apache。 操作指南 1、根据需要为Apache创建用户、组 2、参考配置操作 如果没有设置用户和组,则新建用户,并在Apache配置文件中指定 (1) 创建apache组:groupadd apache (2) 创建apache用户并加入apache组:useradd apache –g apache (3) 将下面两行加入Apache配置文件httpd.conf中 User apache Group apache 2、补充操作说明 1、根据不同用户,取不同的名称。 2、为用户设置适当的家目录和shell。 检测方法 1、判定条件 2、检测操作 检查httpd.conf配置文件。 检查是否使用非专用账户(如root)运行apache 2.2日志安全要求 编号 安全要求-系统-Apache-配置-2.2 要求内容 设备应配置日志功能,对运行错误、用户访问等进行记录,记录内容包括时间,用户使用的IP地址等内容。

操作指南 1、参考配置操作 编辑httpd.conf配置文件,设置日志记录文件、记录内容、记录格式。 其中,错误日志: LogLevel notice #日志的级别 ErrorLog /.../logs/error_log #日志的保存位置(错误日志) 访问日志: LogFormat "%h %l %u %t \"%r\" %>s %b "%{Accept}i\" \"%{Referer}i\" \"%{User-Agent}i\"" combined CustomLog /.../logs/access_log combined (访问日志) ErrorLog指令设置错误日志文件名和位置。错误日志是最重要的日志文件,Apache httpd将在这个文件中存放诊断信息和处理请求中出现的错误。若要将错误日志送到Syslog,则设置:ErrorLog syslog。 CustomLog指令指定了保存日志文件的具体位置以及日志的格式。访问日志中会记录服务器所处理的所有请求。 LogFormat设置日志格式,建议设置为combined格式。LogLevel用于调整记录在错误日志中的信息的详细程度,建议设置为notice。 检测方法 1、判定条件 查看logs目录中相关日志文件内容,记录完整。 2、检测操作 查看相关日志记录。 3、补充说明 2.3禁止Apache访问Web目录之外的任何文件 要求内容 禁止Apache访问Web目录之外的任何文件。 操作指南 1、参考配置操作 编辑httpd.conf配置文件, Order Deny,Allow Deny from all

相关文档
最新文档