1987WEB视界-分享互联网热门产品和行业

您现在的位置是:首页 > 域名 > 正文

域名

Apache实现简单域名和https的301重定向

1987web2022-09-14域名238
页面永久性移走(301重定向)是一种非常重要的自动转向技术。网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种

页面永久性移走(301重定向)是一种非常重要的自动转向技术。网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。


301重定向在网站中经常会用到,比如我想使用www.fossen.cn作为主域名,而不是fossen.cn。考虑到有时候用户可能会省略www,为了让他们能直接访问主域名,而不是重新在地址连加上www的前缀,这时使用301可以将后者强制转向前者。

还有目前主流浏览器默认用http访问网站,而启用了https的网站可以用301重定向,将所有http的请求强制转向https,这样不管用户输入的网址是什么,最终只能使用https进行安全的访问。

在Apache中可以很简单的实现上述两种301重定向,百度搜到的方案有很多使用的mod_rewrite,但Apache官方都建议在这种简单的应用场景下,尽量不要使用mod_rewrite,When not to use mod_rewrite。mod_rewrite功能强大,但这也意味着它更加复杂,更难维护,在某些情况下应该使用那些更简单的代替方法。mod_alias提供了Redirect指令,可以将一个url转向至另一个。

主域名和https重定向可以同时设置,如下。

编辑配置文件httpd.conf,在虚拟主机中使用Redirect指令,*:80表示监听80端口所有域名的请求,即所有http请求;ServerNameServerAlias表示多个需要转向的域名;Redirect指令表示,两域名下所有url的请求永久重定向到https://www.fossen.cn/;而https的请求则全部用另一个监听443端口的虚拟主机处理。

*:80>ServerNamewww.fossen.cnServerAliasfossen.cnRedirectpermanent"/""https://www.fossen.cn/"*:443>ServerNamewww.fossen.com... SSL configuration goes here