跳转到主要内容
首页

用户帐户菜单

  • 登录

主导航

  • 首页
  • 小公司运营
  • 网站建设
  • 创业杂谈
  • 兼职赚钱
  • 小微企业信息化
  • 手册教程
    • 《大伟哥的Drupal 8建站指南》
    • 《通过JohnChow.Com在网上赚钱》
  • 关于

面包屑

  • 首页
  • Drupal 8的https域名重定向优化

Drupal 8的https域名重定向优化

By 大伟哥 | 2017-02-13,周一, 20:32

域名重定向优化是什么:

首先说明一下,这里说的域名重定向优化,是指把指向同一网站的的根域名daweibro.com和二级域名www.daweibro.com统一重定向到其中的一个网址上。

域名重定向优化的原因:

1. 我们的域名解析设置,一定要考虑到访客不同的浏览习惯。比如访问百度网站,有的人直接输入baidu.com,有的人习惯输入www.baidu.com,这样都能打开百度网站。来个访客不容易,我们一定要保证无论输入哪种形式的网址都能正确打开我们的网站。要做到这一点也很简单,至少解析根域名和www域名到主机IP就可以了。

2.既然访客都能访问我们的网站了,为什么还要重定向呢?只是为了样式统一起来好看吗?其实最主要的原因是为了更好地让搜索引擎收录,提高网页在搜索引擎里的排名。江湖传言,同一个网页,如果有不同的url网址的话,是会分散该页面的权重的。因此应该使用重定向把所有网址url都统一到http://www.daweibro.com或者http://daweibro.com的样式,至于选择哪一种就看个人喜好了。

Drupal 8如何进行域名重定向:

Drupal 8的.htaccess文件里已经提供了重定向的方法,只是用符号#给注释掉了,你可以根据需要把代码前面的#符号去掉,保存就可以生效了。

举个例子,如果大伟哥想把http://daweibro.com定向到http://www.daweibro.com,修改代码如下:

  # To redirect all users to access the site WITH the 'www.' prefix,
  # (http://example.com/foo will be redirected to http://www.example.com/foo)
  # uncomment the following:
  RewriteCond %{HTTP_HOST} .
  RewriteCond %{HTTP_HOST} !^www\. [NC]
  RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

如果大伟哥想把http://www.daweibro.com重定向到http://daweibro.com,则需要修改代码如下:

  # To redirect all users to access the site WITHOUT the 'www.' prefix,
  # (http://www.example.com/foo will be redirected to http://example.com/foo)
  # uncomment the following:
  RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
  RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]

这是现成的方案,直接用就可以了。那么大伟哥的问题来了:现在流量劫持这么厉害,大伟哥都已经申请了数字证书,启用https安全访问了,怎么样把所有访客都请到更安全的https渠道里来呢?没有搜到中文的解决方案,用万能的Google查到了stackoverflow有个讨论的帖子,试验了几次,终于解决问题了。方案如下:

Drupal 8域名重定向到https://www.daweibro.com的方案

根目录的.htaccess文件代码:

  RewriteBase /
  RewriteCond %{HTTPS} !on [OR]
  RewriteCond %{HTTP_HOST} !^www\.
  RewriteRule ^ https://www.daweibro.com%{REQUEST_URI} [NE,R=301,L]

用了这个方案,可以把http://daweibro.com, http://www.daweibro.com, https://daweibro.com这三种网址全部重定向到https://www.daweibro.com上来。

说明:大伟哥博客主机采用阿里云ECS服务器,Ubuntu 14.04系统,Apache 2.4版本,一般Apache服务器应该都适用,但没有测试过。

网站建设
  • 添加新评论
  • 744 阅读
Ubuntu
Apache

评论

访客

7 years 10 months 之前

永久连接

drupal8里面好多.htaccess文件 …

  • 回复

大伟哥

7 years 10 months 之前

永久连接

访客 回复 drupal8里面好多.htaccess文件 …

在你drupal根目录里,第一层

  • 回复

Drupal新手交流群友

6 years 6 months 之前

永久连接

跳转

  • 回复

大伟哥

6 years 6 months 之前

永久连接

Drupal新手交流群友 回复 跳转

跳转到站内的页面是可以的,使用Redirect…

跳转到站内的页面是可以的,使用Redirect after logout模块可以实现,项目地址是在https://www.drupal.org/project/redirect_after_logout

但是想要跳转到站外比如baidu.com,大伟哥测试的结果是行不通,即使配合drupal的redirect模块也不能实现。估计要做二次开发了。

  • 回复

添加新评论

此字段内容将保密,不会被其他人看见。
关于文本格式
  • 不允许使用HTML标签。
CAPTCHA
5 + 5 =
计算出这道简单的算术题并键入答案。例如、1+3,就输入 4。
发布评论前,请通过下面的验证,以免被当作垃圾评论机器人屏蔽。

搜索

沪ICP备17000093号-1

公安备案沪公网安备 31011402008254号

© 2016-2022 大伟哥博客版权所有