php强制用户转向www域名的方法

5年以前  |  阅读数:673 次  |  编程语言:PHP 

本文实例讲述了php强制用户转向www域名的方法。分享给大家供大家参考。具体分析如下:

有时候网站的www域名和非www域名都能访问网站,但是这样不利于搜索引擎的收录,会分散网页的权重,所以希望用户访问非www的域名时通过301永久重定向到www域名,例如用户访问jb51.net会直接转向www.jb51.net,本php代码考虑了无法通过head重定向的情况,会在页面上输出链接,让用户点击。


    // Install info.:
    // Copy and paste these lines into your default index.php or
    // the file that get's called if a visitor comes on your 
    // website...
    // read the host from the server environment
    $host = $_SERVER["HTTP_HOST"];
    // fix host name - we never now... ;-)
    $host = strtolower($host);
    $host = trim($host);
    // This is important: 
    // Webbrowsers like Firefox are doing their request without
    // the port number like "www.jb51.net" but some other 
    // applications send host names like "www.jb51.net:80" 
    $host = str_replace(':80', '', $host);
    $host = trim($host);
    // if the host is not starting with www. redirect the 
    // user to the same URL but with www :-)
    if ($host != 'www.jb51.net'){
      // You an also change the "!=" to "==", if you want to force 
      // the user to use the domain name without the www. 
      // send status header, so that search engines or other services
      // detect that this is a permanent redirect and not a temporary
      header('HTTP/1.1 301 Moved Permanently');
      // read the URL the user requested:
      $url = isset($_SERVER["REQUEST_URI"]) ? $_SERVER["REQUEST_URI"] : '';
      // redirect the user to the new destination:
      header('Location: http://www.jb51.net' . $url);
      // Convert "special" chars -- cause we never now... ;-)
      $url = htmlspecialchars($url);
      // "fallback" link, if the browser is not supporting header redirects
      print '<a href="http://www.jb51.net' . $url.'">Please click here</a>';
      // stop the script execution here
      exit;
    }
    // If the domain is www.jb51.net then go on with your PHP code 
    // of with your website...
    // BTW: You need to replace jb51.net trough your own domain :-D

希望本文所述对大家的php程序设计有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例