最新活动:电脑PC端+手机端+微网站+自适应网页多模板选择-建站388元起价!!!
当前位置:主页 > 网站建设 > .htaccess参数说明,如何写以及对网站建设的作用

.htaccess参数说明,如何写以及对网站建设的作用

时间:2023-08-06 11:08:06 阅读: 文章分类: 网站建设 作者: 网站技术员

导读:建站文章建站文章htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。重定向插件Helicon ISAPI_Rewrite 3.1版本也使用这个建站技术建站技术模板。

建站技术建站技术模板htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。重定向插件Helicon ISAPI_Rewrite 3.1版本也使用这个文件,语法基本一样。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。下面我们介绍下htaccess如何写:   【RewriteEngine on】表示重写引擎开启,如果要关闭就改为off,作用就是开启或关闭以下的语句,这样就不需要一条一条的注释语句了。   【RewriteCond %{HTTP_HOST} ^(www\.)?znzncn\.com$】这是重写条件,前面%{HTTP_HOST}表示当前访问的网址,只是指域名部分,格式是www.znzncn.com(不包括“http://”和“/”),^表示字符串开始,$表示字符串结尾。\.表示把这个点.进行了转义 ,如果不转义也行,推荐转义,防止有些服务器不支持。?表示前面括号里面的www\.出现0次或1次,这句规则的意思就是如果访问的网址是znzncn.com或者www.znzncn.com就执行以下的语句,不符合就跳过。   【RewriteCond %{REQUEST_URI} !^/blog/】也是重写条件,%{REQUEST_URI}表示访问的相对地址,就是相对根目录的地址,就是域名/后面的部分,格式上包括最前面的“/”,!表示非,这句语句表示访问的地址不以/blog/开头,只是开头^,没有结尾$。   【RewriteCond %{REQUEST_FILENAME} !-f】【RewriteCond %{REQUEST_FILENAME} !-d】这两句语句的意思是请求的文件或路径是不存在的,如果文件或路径存在将返回已经存在的文件或路径。   【RewriteRule ^(.*)$ /blog/$1】这是重写规则,也是最重要的部分,意思是当上面的RewriteCond条件都满足的时候,将会执行此重写规则,^(.*)$是一个正则表达的 匹配,匹配的是当前请求的URL,^(.*)$意思是匹配当前URL任意字符,.表示任意单个字符,*表示匹配0次或N次(N>0),空格后面/blog/$1是重写部分,意思是将前面匹配的字符重写成/blog/$1,这个$1表示反向匹配,引用的是前面第一个圆括号的部分,即^(.*)$中 的.* 。   这里会有一个问题:根据RewriteBase规则规定,如果rewritebase为/,将会匹配a.html,不带前面的反斜杠,所以上条语句应该写成RewriteRule ^(.*)$ blog/$1(不带/),不过实际应用上带上前面的反斜杠,也可以用,可能带不带都行。现在问题出来了,如果不设置rewritebase 为/ ,将会匹配整个网址http://www.znzncn.com/a.html,显然这是错误的,所以应该添加这条:RewiteBase /。   还有一个问题:你不能保证每个人输入的网址都是小写的,如果输入大写的呢?linux系统是区分大小写的,所以应该在RewriteCond后添加[NC]忽略大小写。   【RewriteCond %{HTTP_HOST} ^(www\.)?znzncn\.com$】【RewriteRule ^(/)?$ blog/index.php [L]】这两句的意思是指请求的host地址是www.znzncn.com或znzncn.com时,如果地址的结尾只有0个或者1个“/”时,将会重写到子目录下的主页,这主要因为重写后的地址是不能自动寻找主页的,需要自己指定。如果后面还继续有语句的,就不应该加上最后的[L],因为这是表示最后一条语句的意思。   完整的htaccess语句 RewriteEngine On RewiteBase / RewriteCond %{HTTP_HOST} ^(www\.)?xxx\.co织梦后台模板m$ [NC] RewriteCond %{REQUEST_URI} !^/blog/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ blog/$1</p><p># 没有输入文件名的默认到到首页 RewriteCond %{HTTP_HOST} ^(www\.)?xxx\.com$ [NC] RewriteRule ^(/)?$ blog/index.php [L] 防盗链语句 RewriteEngine on RewiteBase / RewriteCond %{HTTP_REFERER} !^$ [NC] RewriteCond %{HTTP_REFERER} !znzncn.com [NC] RewriteRule \.(jpg|gif|png|bmp|swf|jpeg)$ /error/daolian.gif [R,NC,L] 网址规范化htaccess语句 RewriteEngine on RewriteCond %{http_host} ^znzncn.com [NC] RewriteRule ^(.*)$ http://www.znzncn.com/$1 [R=301,L] 自定义404错误页面 ErrorDocument 404 /404.html 网站升级的时候,只有特定IP才能访问,其他的用户将看到一个升级页面   RewriteEngine on RewriteCond %{REQUEST_URI} !/upgrade.html$ RewriteCond %{REMOTE_HOST} !^24\.121\.202\.30 RewriteRule $ http://www.znzncn.com/upgrade.html [R=302,L]   老域名转向新域名   RewriteEngine On RewriteRule ^(.*)$ http://www.znzncn.com/$1[R=301,L] 还有很多htaccess语句规则     # 把html后缀的url链接到php文件 # $1指代的是前面第1个用括号括起来的内容 RewriteRule ^/?([a-z/]+)\.html$ $1.php [L] # 或者把旧文件夹的内容链接到新文件夹 RewriteRule ^/?old_directory/([a-z/.]+)$ new_directory/$1 [R=301,L] # 隐藏文件名 RewriteRule ^/?([a-z]+)$ $1.php [L] 最后,把一些常用的织梦模板免费正则表达式列一下吧   \w匹配字母或数字或下划线或汉字 \s匹配任意的空白符 \d匹配数字 \b匹配单词的开始或结束 ^匹配字符串的开始 $匹配字符串的结束 *重复零次或更多次 +重复一次或更多次 ?重复零次或一次 {n}重复n次 {n,}重复n次或更多次 {n,m}重复n到m次

关键词标签: 网站建设 如何写

声明: 本文由我的SEOUC技术文章主页发布于:2023-08-06 ,文章.htaccess参数说明,如何写以及对网站建设的作用主要讲述网站建设,如何写,网站建设网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_36893.html

我的IDC 网站建设技术SEOUC.COM
专注网站建设,SEO优化,小程序设计制作搭建开发定制网站等,数千家网站定制开发案例,网站推广技术服务。
  • 5000+合作客服
  • 8年从业经验
  • 150+覆盖行业
  • 最新热门源码技术文章