回答
如果你可以使用PHP,你可以设置一个location
header。
$url = 'http://yourdomain.com';
header('Location: ' . $url);
你会想做这里面一个条件,对于通过非www,例如把关,$_SERVER
变种。
请注意:如果您的根域重定向到www,您将导致无限循环。
为了将所有请求重定向到www.example.com
到example.com
,您需要执行一定数量的服务器配置(例如.htaccess修改)。通常你会像这样的东西做的这一切通过的.htaccess(或httpd.conf文件):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ http://example.com/$1 [R=301,QSA]
这将重定向到http://www.example.com/anything
http://example.com/anything
。
有可能用PHP来做到这一点,但为了做到这一点,你必须有你的服务器配置为发送所有请求给定的PHP文件,这将处理重定向。在Apache上,您可能会在复杂性方面寻找与上述类似的配置,再加上实际的PHP重定向。将所有请求发送到该PHP文件可能也会破坏您的网站。尽管如此,除非你的网站目前设置为这样(我对此非常怀疑),除了你的索引页面之外,很难重定向任何东西。
“我没有权利修改htaccess文件” – buley
你可以在PHP中这样做,如果你必须,但如果可能的话,htaccess路线要好得多。下面是一些代码,应该做你以后:
// Check if the current request has www in the server name
if (substr($_SERVER['SERVER_NAME'], 0, 3) === "www") {
// Redirect required so ensure you use a 301
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://example.com" . $_SERVER['REQUEST_URI']);
}
这是您使用301,从而使重定向在浏览器缓存非常重要的,你不具有与问候竞争领域引起任何问题到您的网站SEO。
的几个注意事项:有可能会比使用REQUEST_URI取决于如何建立您的网站更好的办法,但是这是一个非常简单的解决方案,应该在大多数情况下工作。发送表单可能会有问题,然后重定向(不能记住我的头顶),所以请确保您自己的HTML中的所有链接始终指向非www版本。
- 1. 将www子域名转发到域
- 2. 如何让根级域名转到www
- 3. 转换HTTPS非WWW域名到https WWW
- 4. 如何将www添加到我的域名和子域名网址
- 5. 重定向非WWW域名到www域名除了HTTPS
- 6. 转发子域名到我自己的域名服务器Names.co.uk
- 7. 域名重定向到www
- 8. 重定向域名到www
- 9. 使用Intelligencia.UrlRewriter将www子域重定向到根域
- 10. 将域名重定向到WWW
- 11. 将域转发到Rails中的子域
- 12. Wordpress www到非www域名迁移
- 13. 将我的域名转发到我的博客
- 14. Nginx的重定向只有根域而不是子域名WWW
- 15. 域名转发到appspot.com
- 16. 如何将根(裸)域重定向到www - heroku和zerigo
- 17. 的.htaccess在我的域名之一,WWW到非www
- 18. 如何将URL转到新域名?
- 19. 域名前缀'www'
- 20. Odoo 9域名www
- 21. Nginx的重写无www前缀的域名到www前缀的域名
- 22. 的.htaccess根域需要www和子域不需要WWW
- 23. 如何将目录重定向到子域,并将www子域重定向到非www子域?
- 24. GlassFish将www重定向到非www域
- 25. 将域名转移到AWS
- 26. 当我的应用程序强制使用SSL时,AWS根域转发到www子域
- 27. 如何通过DNS将https转发到不同的域名?
- 28. 我如何转发子域到另一个域名,但遵循所有
- 29. 如何将应用程序域转发到我的自定义域
- 30. webhost4life使根域名指向到www,的httpd.ini
联系您的托管服务提供商。 –
我可以使用PHP吗?我可以重定向所有的URL – Swadesh