什么是301重定向?
页面永久性移走(301重定向)是一种非常重要的“自动转向”技术。网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
在我们网站建设中,时常会遇到需要网页重定向的情况:像网站调整,改变了网站的目录结构,网页被移到一个新地址。或者网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这些情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户得到一个404页面错误信息,访问流量白白丧失。又比如某些注册了多个域名的网站,也需要通过重定向让访问这些域名的用户自动跳转到主站点。
当我们申请SSL证书构建https后,会出现http及https并存的情况,在Apache2虚拟目录配置文件中添加Redirect permanent并不能很好地解决全站http跳转https的问题.
这时,我们可以通过添加修改网站根目录下的.htaccess文件实现全站301重定向到https,而不止是主页。
开启Apache2重写模块rewrite:
###管理员身份运行
sudo a2enmod rewrite
service apache2 restart
修改虚似目录配置文件,在<Directory /网站目录>与之间添加AllowOverride All,如有AllowOverride None,改为AllowOverride All。然后执行service apache2 reload,重载一次配置。