• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >windows > .htaccess重定向和url重写

.htaccess重定向和url重写

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含htaccess重写,301重定向htaccess,.htaccess重定向,.htaccess,.htaccess在线生成等服务器相关知识,网友希望可以进行参考

.htaccess是需要apache打开虚拟主机支持.htaccess才可以实现下面的功能哦,下面我来介绍关于.htaccess阻止某些ip访问,重定向和url重写,限定访问特点资源,实现缓存等功能介绍。

什么是htaccess

概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。


一个简单的重定向

 代码如下 复制代码
Redirect 301 ^old.html$ http://localhost/new.html

这是设置一个http状态码为301(永久移动)并把所有访问old.html转向到new.html。使用了正则表达式来匹配访问的页面,后面的url必须是完整路径。

Url重写

 代码如下 复制代码

RewriteEngine on
RewriteRule ^old.html$ new.html

第一行打开重写引擎
第二行是重写规则。这样用户访问old.html时实际却是访问的new.html,而且用户对此好吧知情。因为地址栏里依旧显示是old.html。

为了在地址栏显示新的访问地址,我们可以加个f标志在rewriterule语句里。

 代码如下 复制代码

RewriteRule ^old.html$ http://hostname/new.html [r=301]下面是把带查询参数的url重写成对搜索引擎友好的url

RewriteRule ^products/([^/]+)/([^/]+)/([^/]+) product.php?cat=$1&brand=$2&prod=$3

这条规则允许访问者以类似这样的

 代码如下 复制代码
url products/turntables/technics/sl1210,

来访问product.php?cat=turntables&brand=technics&prod=sl1210.

括号里为一个单元,分别对应后面的$1,$2,$3。[^/]+ 在原括号里表示除了/之外的任何一个或是多个字符。

自定义错误页面

 代码如下 复制代码
ErrorDocument 404"/404.html"

这是定义404页面无法找到的错误,也可以定义其他错误代码的页面。

限定访问特点资源

 代码如下 复制代码

<Files"protectedfile.html">
   AuthName"Username and password required"
   AuthUserFile/path/to/.htpasswd
   Require valid-user
   AuthType Basic
</Files>

保护protectedfile.html,authName是登陆框的提示信息,authuserfile是.htpasswd文件的路径

阻止某些ip访问

 代码如下 复制代码

order allow,deny
deny from 192.168.0.1
allow from allOrder

告诉apache指令的顺序。这里的这个是先允许后拒绝的。虽然allow from all后出现但是还是在前面生效。拒绝了192.168.0.1的访问。也可以按段来屏蔽访问的,只要只指定前面的几段就可以类似,192.168.

实现缓存

 代码如下 复制代码

ExpiresActive on
ExpiresByType image/gif                 "access plus 1 month"
ExpiresByType image/png                 "access plus 1 month"
ExpiresByType image/jpg                 "access plus 1 month"
ExpiresByType image/jpeg                "access plus 1 month"

第一行开启,下面分别控制各种资源都加上一个月的缓存期。这个功能依赖apache的mod_expires 模块。


认证举例
如果你只是为了知道如何认证,而直接从这里开始看的,有很重要的一点需要注意,有一种常见的误解,认为实现密码认证必须要使用.htaccess文件,其实是不正确的。把认证指令放在主配置文件的<Directory>段中是一个更好的方法,而.htaccess文件应该仅仅用于无权访问主配置文件的时候。参见上述关于何时应该与何时不应该使用.htaccess文件的讨论。
有此声明在先,如果你仍然需要使用.htaccess文件,请继续看以下说明。

.htaccess文件的内容:

 代码如下 复制代码

AuthType Basic
AuthName "Password Required"
AuthUserFile /www/passwords/password.file
AuthGroupFile /www/passwords/group.file
Require Group admins

必须设置 AllowOverride AuthConfig 以允许这些指令生效。
服务器端包含(SSI)举例
.htaccess文件的另一个常见用途是允许一个特定的目录使用服务器端包含(SSI),可以在需要的目录中放置.htaccess文件,并作如下配置:

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • .htaccess重定向和url重写

相关文章

  • 【有奖征文】让运维更有“韵味”
  • Hyper-V之VDI基础架构
  • windows7中配置Nginx+php环境教程
  • kb969947 Windows 内核模式驱动程序中的漏洞
  • VMware vCenter Operations Enterprise 5.6.0 部署测试
  • 系统开机后无响应或黑屏问题的解决方法
  • w3wp.exe进程占用内存过高解决办法
  • Windows中IIS7+FastCGI配置PHP环境
  • windows/Linux查看端口占用命令
  • 华为存储:高端存储、大数据存储齐头并进

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Windows 2003 服务器的实用安全设置
    • apache 和iis共用80端口多种解决办法
    • windows中关闭135危险端口方法
    • linux 巡检报告
    • EPG服务器节目单更新私有描述符
    • linux飞信机器人的安装&lt;fetion&gt;
    • 笔记本电脑不使用软件共享无线网络的方法
    • nginx日志记录客户端真实ip
    • windows2003越来越慢解决办法 可能与temp/sess_垃圾文件过多
    • oracle数据库使用nfs存储,启动报错提示无法锁定文件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有