2023-03-09 分类: 网站建设
PHP网站建设最常用的服务器是Apache,网站使用伪静态可利于维护优化,在Apache服务器使用伪静态就必须用到htaccess,而htaccess使用的是正则表达式规则和一些特殊语法,不管你是一个网站开发者、维护优化师还是一个网站管理员,理解htaccess规则对你都是非常必要的。以下创新互联网站建设(www.cdcxhl.com)为你一一讲解。
下图是一个网站的htaccess规则
第一句RewriteEngine on 表示开启伪静态
RewriteCond 表示应用的规则前提 可以是%{HTTP_USER_AGENT} 表示访问浏览器;%{HTTP_HOST} 表示访问主机域名%{HTTP_REFERER} 来源 %{HTTP_COOKIE} cookie
RewriteRule 表示应用的具体规则跳转,主要是正则表达式
中括号中的L 表示规则执行到此为止,不再执行后面的规则
R=301 表示301跳转(301跳转在维护优化中是非常重要而且经常使用到的,尤其是网站改版中URL变化中使用)
QSA表示强制重写引擎在已有的替换串中追加一个请求串,而不是简单的替换。 如果需要通过重写规则在请求串中增加信息,就可以使用这个标记。
PT表示强制重写引擎将内部结构request_rec中的uri字段设置为 filename字段的值,主要用于混合使用mod_alias和mod_rewrite
NC 表示忽略大小写
RewriteCond %{REQUEST_FILENAME} !-f //如果文件存在,就直接访问文件
RewriteCond %{REQUEST_FILENAME} !-d //#如果目录存在就直接访问目录
RewriteCond %{REQUEST_URI} !^.*(/.css|/.js|/.gif|/.png|/.jpg|/.jpeg)$ //#如果是这些后缀的文件,就直接访问文件
以上三个规则都不再使用下面的伪静态规则。
RewriteCond %{HTTP_HOST} ^cdcxhl.com/?$ [NC]
RewriteRule ^(.*)$ http://www.cdcxhl.com/$1 [L,R=301]
这个是维护中为了避免域名cdcxhl.com和www.cdcxhl.com分散权重,统一跳转到www.cdcxhl.com中
RewriteRule ^index.asp$ / [L,R=301]
RewriteRule ^index.php$ / [L,R=301]
这两句也是为了避免分散权重,让index.asp和index.php都301跳转到主目录。
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
这句是用于Thinkphp伪静态跳转
当网站在维护或者升级测试的时候,可通过伪静态设置当自己访问时访问网站,其他IP访问则跳转到提示页面
RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.html$
RewriteCond %{REMOTE_ADDR} !^122.22.11.11
RewriteRule $ /error.html [R=302,L]
当前文章:网站建设中你必须知道的Apache服务器伪静态规则htaccess
分享链接:https://www.cdcxhl.com/news14/242914.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有网站建设等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联
猜你还喜欢下面的内容