什么是URL重定向?
URL重定向就是把一个URL重定向到另一个URL上去,当用户发出相应的访问请求时将自动跳转到指定的位置,常见的重定向有301(永久重定向)及302(暂时重定向)两种。
那我们如何利用Apache在windows下配置虚拟主机的301重定向。
Apache下URL重定向怎么配置方法:
1、首先需要apache开启重定向,修改httpd.conf配置:
查找:
Options FollowSymLinks
AllowOverride None
改为:
Options FollowSymLinks
AllowOverride All
2、去掉下面的注释
LoadModule rewrite_module modules/mod_rewrite.so //去掉行前的#
3、重定向的配置如何写
有两种方式,第一种是在httpd.conf中写,这种写法适合有服务器完整权限的网站管理员,写法大概如下:
ServerAdmin admin@cnwebe.com
DocumentRoot "/websites/www"
ServerName localhost
RewriteEngine On
RewriteRule ^index.html$ index.php [L]
4、我们这里主要介绍另外一种方式:在网站目录中使用.htaccess,这种方法适合采用虚拟主机形式的网站管理员,
这两种办法设置的重定向规则其实基本上都是一样的,只是设置的地方不同。
htaccess都可以做什么?
.htaccess文件可以的事情,主要包括:文件夹密码保护、用户自定义重定向、自定义404页面、扩展名伪静态化、禁止特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,等等。
5、.htaccess语法规则
我们先看一个图片防盗链的例子:
RewriteEngine On
RewiteBase /
RewriteCond %{HTTP_REFERER} !^http://(.+.)?baidu.com/ [NC] //如果来源网址不是*.baidu.com
RewriteCond %{HTTP_REFERER} !^$ //并且来源网址不是空
RewriteRule .*.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L] //如果访问的文件后缀是jpeg,jpg,gif,bmp,png的图片,则重定向到一个固定的图片
以上方法对于任何windows下的虚拟主机都实用,同时也可以在织梦、帝国、PHPCMS程序中使用。下面我们讲下linux下nignx主机301重定向方法。
nignx主机301重定向方法
rewrite重定向-跳转实例:
server {
listen 80;
server_name baidu.com;
rewrite ^/(.*) http://www.baidu.com/$1 permanent;
access_log off;
}
将123.baidu.com 301跳转到www.baidu.com/123
if ($host = "123.baidu.com"){
rewrite ^/(.*)$ http://www.baidu.com/123/$1 permanent;
}
以上方法同时可以用在织梦、帝国、PHPCMS或者WP安装上的服务器,刚开始接触虚拟主机的时候,当时比较喜欢windows主机,操作方便,界面简单,但是经过长期的接触这个行业,现在反而linux更安全,也更方便。