Apache环境.htaccess伪静态强制https跳转访问设置

昨天忙着将公司的几个海外空间的网站搬迁到亚洲节点的虚拟主机中,因为有几个网站是用到HTTPS网址形式的SSL证书,由于忘记强制HTTPS跳转,我当时也忘记设置这个,因为搬迁过来后直接用HTTPS访问是没有问题的所以也就这么过去了,今天被同事发现直接打开网站之后没有强制跳转过去。

因为虚拟主机采用的是Apache服务器架构,所以我们直接可以在根目录中的.htaccess伪静态文件添加就可以,具体的操作很简单。

A - 根目录

 代码如下 复制代码

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://laobuluo.com/$1 [R,L]

如果我们网站在根目录,直接用上面的文件添加到当前根目录的.htaccess文件中,注意红色文字替换成我们自己的网址。

B - 子目录

 代码如下 复制代码

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} subfolder
RewriteRule ^(.*)$ https://laobuluo.com/subfolder [R,L]

这个是在对应的子目录(subfolder)中,我们根据实际的需要替换自己的网址,以及对应的子目录。

总结,就这么简单的设置,就可以强制http跳转https网址

以上来自:http://www.itbulu.com/htaccess-https.html

第一,带www的跳转至不带www域名

 代码如下 复制代码

RewriteEngine On
RewriteCond %{HTTP_HOST} !^111cn.net$ [NC]
RewriteRule ^(.*)$ http://111cn.net/$1 [L,R=301]

第二,不带www的跳转至www域名

 代码如下 复制代码

RewriteEngine On
RewriteCond %{HTTP_HOST} ^111cn.net [NC]
RewriteRule ^(.*)$ http://www.111cn.net/$1 [L,R=301]

一般就是用到上述的2个方法,记不住没关系,跟老左一样记录下来,下次要用直接复制过去使用。
新增加如果网站搬家,老域名全部301跳转到新站点:

 代码如下 复制代码

RewriteEngine on
RewriteRule ^(.*)$ http://www.111cn.net/$1 [R=301,L]

时间: 2024-09-21 21:42:00

Apache环境.htaccess伪静态强制https跳转访问设置的相关文章

Linux中开启Apache支持.htaccess伪静态文件步骤

第一.编辑httpd.conf文件 A - 在etc/httpd/conf/目录下的httpd.conf 文件,找到: LoadModule rewrite_module modules/mod_rewrite.so 如果前面有#就取消,如果没有就默认不要修改. B - 设置AllowOverride 同样的在httpd.conf  中找到下面的脚本 <Directory /> Options FollowSymLinks AllowOverride None </Directory&g

Apache Rewrite伪静态与URL跳转配置

Rewirte主要的功能就是实现URL的跳转,Rewirte代码的正则表达式是基于Perl语言.基于服务器级的(httpd.conf)和目 录级的 (.htaccess)两种方式,而我们Apache一般用的是目录级的 (.htaccess)方式,所以海天这里学习和记录的也就是(.htaccess)方式,俗称伪静态. 既然Rewirte主要的功能就是实现URL的跳转,所以海天就直接从URL跳转入手,废话不多说,开始! 一般的.htaccess伪静态跳转写法为(下例为输入 a.111cn.net 的

跳转-Apache 的 .htaccess 重写规则[短网址]

问题描述 Apache 的 .htaccess 重写规则[短网址] 我想让 localhost/ey3i 跳转到 localhost/responseShortUrl.php?url=ey3i 怎么写.htaccess [其中,ey3i是随机的4到7位大小写字母和数字] 在网上搜到一份 RewriteEngine On RewriteBase / RewriteRule ^/(.*)$ responseShortUrl.php?url=$1[L] 但是不行,用不了 求大神指点 解决方案 Rewr

PHP+APACHE实现网址伪静态

 这篇文章主要介绍了PHP+APACHE通过使用mod rewrite模块实现网址伪静态的相关资料,需要的朋友可以参考下     Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态. 主要步骤如下: 1.检测Apache是否开启mod_rewrite功能 可以通过php提供的phpinfo()函数查看环境配置,找到"Loaded Modules",其中列出了所有apache2handler已经开启的模块,如果里面包括"mod_r

如何用伪静态实现网址跳转

问题描述 如何用伪静态实现网址跳转 以前网站是动态的,现在开启了伪静态.想让搜索引擎收录的动态页面跳转到静态页面上去,以及客户端访问的动态页面也跳转到静态页面上去,如何在.htaccess中设置?用的是Apache . 例如 ^list/(.*)$ index.php?s=video/lists/id/$1 这个伪静态规则 现在是想让客户访问index.php?s=video/lists/id/$1 时 URL自动跳转到^list/(.*)$ 可以通过.htaccess设置么? 解决方案 htt

PHP+APACHE实现网址伪静态_php技巧

 Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态. 主要步骤如下: 1.检测Apache是否开启mod_rewrite功能     可以通过php提供的phpinfo()函数查看环境配置,找到"Loaded Modules",其中列出了所有apache2handler已经开启的模块,如果里面包括"mod_rewrite",则已经支持,不再需要继续设置.如果没有开启"mod_rewrite",则打

实用的Apache和.htaccess配置

Apache的.htaccess文件是服务器的心脏,控制着网站访问的各种规则.这里提供了11个不错的.htaccess片段能够帮助你优化你的网站,包括重定向.性能.可用性等等! 1. 强制后缀反斜杠 在URL的尾部加上反斜杠似乎对SEO有利 :) <IfModule mod_rewrite.c> RewriteCond %{REQUEST_URI} /+[^\.]+$ RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L] </IfModule&

apache-求教个htaccess伪静态写法

问题描述 求教个htaccess伪静态写法 我想把下面这个格式http://csdn.net/watch/123.html 伪静态成http://csdn.net/test/123.html 是apache系统,谢谢

apache下mod_gnutls实现多HTTPS虚拟主机

多HTTPS虚拟主机的配置.那么在apache的环境下该如何配置呢?利用的原理的都是同一个,也就是SNI.基于域名的虚拟主机,即共享同一个IP地址和端口的HTTPS虚拟主机. SNI-服务器名称指示,是一个TLS的扩展,它使得启用SSL的基于域名的虚拟主机的配置成为可能.打破了每个HTTPS的虚拟主机需要一个IP地址的要求.因此,成本大大降低,因为所有的HTTPS虚拟主机可以共享相同的IP地址和端口,使HTTPS Web服务的更简单. 在apache环境下,需要使用mod_gnutls来实现同一