欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

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

程序员文章站 2022-05-15 09:48:58
...

这篇文章主要介绍了php强制用户转向www域名的方法,可实现模拟301重定向的功能,并且针对无法head重定向的情况输出链接,需要的朋友可以参考下

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

有时候网站的www域名和非www域名都能访问网站,但是这样不利于搜索引擎的收录,会分散网页的权重,所以希望用户访问非www的域名时通过301永久重定向到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 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 // 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: ' . $url); // Convert "special" chars -- cause we never now... ;-) $url = htmlspecialchars($url); // "fallback" link, if the browser is not supporting header redirects print 'Please click here'; // stop the script execution here exit; } // If the domain is then go on with your PHP code // of with your website... // BTW: You need to replace jb51.net trough your own domain :-D

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