设为首页 收藏本站
查看: 698|回复: 0

[经验分享] asp.net php asp jsp 301重定向的代码

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-26 15:22:49 | 显示全部楼层 |阅读模式
Technorati 标签: asp.net,php,asp,jsp,301重定向
  介绍一下针对各类程序系统实施301重定向的代码:
1、Linux主机重定向
Godaddy的Liunx主机,Godaddy本身已经支持Apache,所以直接创建一个.htaccess文件就可以了,一般来说,在本地无法创建.htaccess的时候可以先创建一个txt格式文件,上传到根目录的时候再重命名为“.htaccess”就可以了。网上很多如何进行 301重定向的教程,无论是整站重定向还是单页重定向。下面就以我的www.wecanwecan.com为例
1.1 无www域名转移到www域名
RewriteEngine on
rewritecond %{http_host} ^wecanwecan.com [nc]
rewriterule ^(.*)$ http://www.wecanwecan.com/$1 [r=301,nc]
1.2 整站301重定向
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^wecanwecan.com [NC]
RewriteRule ^(.*)$ http://www.wecanwecan.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www.wecanwecan.com [NC]
RewriteRule ^(.*)$ http://wecanwecan.com/$1 [L,R=301]  
  另外一种是在根目录下的index.php里这样弄  
  header(“HTTP/1.1 301 Moved Permanently”);
header(“Location:http://wecanwecan.com/”);
exit();  
  2、ASP主机301重定向  
  在 index.asp 或 default.asp 的最顶部加入以下几行:
代码如下:  
  <%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,”www.wecanwecan.com ”
Response.End
%>  
  3、ASP.net主机301重定向  
  ASP .NET:  
  Response.Status = “301 Moved Permanently”;  
  Response.AddHeader(”Location”,"http://www.wecanwecan.com");  
  }  
  我封装在一个类里:  
  using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI;
using System.Web.UI.HtmlControls;    namespace ClassLib
{
    public class URLClass
    {
        private bool flag301 = false;//是否启动 301
        private bool isIndex = false;//是否 返回主页 或者保留在当前页
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="fl">是否启动 301</param>
        /// <param name="page">Page</param>
       /// <param name="strURL">格式www.xxx.com</param>
        public URLClass(bool fl, Page page, string strURL)
        {
            flag301 = fl;
            URL301(page, strURL);
        }
        /// <summary>
        /// 返回主页
        /// </summary>
        /// <param name="page"></param>
        /// <param name="strURL">格式www.xxx.com</param>
        public void URL301(Page page, string strURL)
        {
            //301重定向
            if (page.Request.Url.DnsSafeHost != strURL && flag301 == true)
            {
                page.Response.Clear();
                page.Response.StatusCode = 301;
                page.Response.Status = "301 MovedPermanently";
                page.Response.AddHeader("Location", "http://" + strURL);
                page.Response.End();
            }
        }
    }
}
  4 PHP的301重定向

  header('HTTP/1.1 301 Moved Permanently');//发出301头部
header('Location: http://www.'.$strDomain.$request_uri);//跳转到我的新域名地址  
  
  我用301.inc.php文件写了301代码,在其他文件头部都引用上 就可以了  
  <?php
//-----------------------------------
//301 重定向
$strDomain="chinawecan.com";
$the_host = $_SERVER['HTTP_HOST']; //取得进入所输入的域名
$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判断地址后面部分
if($the_host !== 'www.'.$strDomain) //这是我要以前的域名
{
/*“!==”是不完全等于的意思,也可以用“!=”不等于,这样,就可以将以前的域名,
包括gcxirang.com、www.gcxirang.com以及新域名中我gcidc.net全部重定向到www.gcidc.net*/
  header('HTTP/1.1 301 Moved Permanently');//发出301头部
  header('Location: http://www.'.$strDomain.$request_uri);//跳转到我的新域名地址
}  
  //----------------------------------
?>  
  引用如下:  
  <?php
//-----------------------------------
//301 重定向
include('include/301.inc.php');  
  ?>  
  
  5 JSP的301重定向  
  如一页面article.jsp  
  [code]  
  <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);   
response.setHeader("Location","/other.jsp");  
  return;
%>  
  [code]  
  
  
  
  
  
  在apache中如何实现301转向呢?  
  编辑.htaccess的方法。
注意:在设置301重定向之前务必备份相应目录下的.htaccess文件。
1.重定向domain.com到www.domain.com
这种重定向旨在使域名唯一,是网站SEO必须要做的,后面重定向www.domain.com到domain.com也是出于同样的原因,只是形式不同。
打开.htaccess文件,加入以下规则。(下面的规则是针对主域名的,子域名要修改)  
  RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]

  2.重定向www.domain.com到domain.com  
  RewriteEngine On
RewriteCond %{HTTP_HOST} !^domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]

  3.重定向olddomain.com到www.newdomain.com  
  RewriteEngine On
RewriteCond %{HTTP_HOST} !olddomain.com$ [NC]
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301]

  4.重定向olddomain.com to newdomain.com  
  RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !olddomain.com$ [NC]
RewriteRule ^(.*)$ http://newdomain.com/$1 [L,R=301]

  5.重定向domain.com/file/file.php 到 otherdomain.com/otherfile/other.php    RewriteCond %{HTTP_HOST} ^www.domain.com$
RewriteRule ^file/file.php$ http://www.otherdomain.com/otherfile/other.php [R=301,L]

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104587-1-1.html 上篇帖子: PHP 多维数组排序 保持索引对应关系 巧用 uasort 下篇帖子: jsp,php可以gb2312,gbk来做站并用上ajax。我感觉这是 asp.net缺失的部分!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表