加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

htaccess重定向和url重写的几个示例

发布时间:2022-06-19 07:47:26 所属栏目:教程 来源:互联网
导读:.htaccess是apache虚拟目录中一个可以用来代替apache中conf中的一些功能了,像重定向和url重写或安全配置都可以利用它来完在下面来看看一些关于.htaccess例子. # 这是注释 # 指定默认首页查找顺序 DirectoryIndex index.htm .index.php #自定义404页面 Erro
  .htaccess是apache虚拟目录中一个可以用来代替apache中conf中的一些功能了,像重定向和url重写或安全配置都可以利用它来完在下面来看看一些关于.htaccess例子.
 
  # 这是注释
  # 指定默认首页查找顺序
  DirectoryIndex index.htm .index.php
  #自定义404页面
  ErrorDocument 404 /error/404.html
  #比较下面2句: 默认是302,用户访问的是abc,但实际显示的是def页面,地址栏也还是显示abc
  redirect /abc /def
  #redirect 301 /abc /def
  RewriteEngine on
  RewiteBase /
  #访问old.html实则显示的是index.php ,而地址栏依旧显示old.html,对比后面带中括号[]写法区别
  RewriteRule ^old.html$ index.php
  #RewriteRule ^old.html$ /index.php [r=301]
  #访问index.php需要验证账号密码,如果是进入目录要验证,只须去掉<Files>标签并把.htaccess文件放入对应目录既可
  <Files "index.php">
  AuthName "Username and passwordsss required"
  # .htpasswd即验证账号密码保存文件,名称可自定义,但路径必须是绝对路径,否则会报500 internal server error错误
  AuthUserFile D:/Kuaipan/.htpasswd
  Require valid-user
  AuthType Basic
  </Files>

  htaccess加强网站的安全设置
 
  用.htaccess 自定义错误页的方法,系统默认的错误页面太丑啦,自己设计一个吧,可以是php等动态文件格式的哦,通过在.htaccess文件里加入下面的文字将其变成自定义页面:
 
  ErrorDocument 404 /err/404.php
 
  ErrorDocument 503 /err/503.php
 
  不管是404/403/400/503等其它错误都可以自己设计指定一个页面哦.

  Options -Indexes
 
  用.htaccess阻止特定的IP地址
 
  想允许某些特定IP的用户可以访问你的网站,例如:只允许使用特定ISP的用户进入某个目录,或者想封禁某些特定的IP地址,例如:将低级用户隔离于你的信息版面外.
 
  现在网上的大多数用户都使用动态IP地址,这个方法一般很少用.
 
  使用以下命令封禁一个IP地址:
 
  deny from 127.0.0.10
 
  这里的127.0.0.10是被封禁的IP地址,如果封禁整个网段的地址,可以这样写.
 
  deny from 210.10.56.
 
  则将封禁210.10.56.0~210.10.56.255的所有IP地址,用.htaccess只允许某个IP地址访问网站:
 
  allow from 127.0.0.10
 
  当然也可以想上面一样运行一个ip段访问,用.htaccess阻止所有人访问目录.
 
  deny from all
 
  这个命令并不影响脚本程序使用这个目录下的文档,用.htaccess 替换默认的首页index文件,如果想更改默认的首页文件(index.htm等),使用.htaccess可以指定任何的页面作为默认的首页.
 
  下面的代码设置 index.php / index.php3 / messagebrd.pl / index.html / index.htm同时指定了这些页面为默认的首页,从左到右,如果存在就访问.
 
  DirectoryIndex index.php index.php3 messagebrd.pl index.html index.htm
 
  利用.htaccess重定向,重定向文件的例子:
 
  Redirect /location/from/root/file.html /new/file/2.html
 
  haccess重定向整个网站的目录
 
  假如你的网站上有一个名为 /olddirectory 的目录,并且你已经新建了一个 /newdirectory 文档,你可以将旧目录下所有的文件做一次重定向而不必一一声明:
 
  Redirect /olddirectory /newdirectory
 
  利用.htaccess 保护密码
 
  .htaccess具有完美的安全性(即访问者必须知晓密码才可以访问目录,并且绝无“后门”可走).
 
  1.密码保护的.htaccess文件
 
  利用.htaccess将一个目录加上密码保护分两个步骤,在你的.htaccess文档里加上几行代码,再将.htaccess文档放进你要保护的目录下:
 
  AuthName "Section Name"
  AuthType Basic
  AuthUserFile /full/path/to/.htpasswd
  Require valid-user
  根据你的网站情况修改上述内容,如用被保护部分的名字“Section Name”,/full/parth/to/.htpasswd则应该替换为指向.htpasswd文件(后面详述该文档)的完整服务器路径,如果你不知道你网站空间的完整路径,请询问一下你的系统管理员.
 
  2.密码保护的.htpasswd文件
 
  目录的密码保护比.htaccess的其他功能要麻烦些,因为你必须同时创建一个包含用户名和密码的文档,用于访问你的网站,相关信息(默认)位于一个名为.htpasswd的文档里,像.htaccess一样,.htpasswd也是一个没有文件名且具有8位扩展名的文档,可以放置在你网站里的任何地方(此时密码应加密),但建议你将其保存在网站Web根目录外,这样通过网络就无法访问到它了.
 
  3.输入用户名和密码
 
  创建好.htpasswd文档后(可以通过文字编辑器创建),下一步是输入用于访问网站的用户名和密码,应为:username:password
 
  “password”的位置应该是加密过的密码,你可以通过几种方法来得到加密过的密码:一是使用一个网上提供的permade脚本或自己写一个,另一个很不错的username/password加密服务是通过KxS网站,这里允许你输入用户名及密码,然后生成正确格式的密码.
 
  对于多用户,你只需要在.htpasswd文档中新增同样格式的一行即可,另外还有一些免费的脚本程序可以方便地管理.htpasswd文档,可以自动新增/移除用户等.
 
  4.访问网站
 
  当你试图访问被.htaccess密码保护的目录时,你的浏览器会弹出标准的username/password对话窗口,如果你不喜欢这种方式,有些脚本程序可以允许你在页面内嵌入username/password输入框来进行认证,你也可以在浏览器的URL框内以以下方式输入用户名和密码(未加密的):
 
  http://username:password@www.website.com/directory/。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读