温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

apache中怎么使用伪静态规则

发布时间:2021-06-23 14:21:57 来源:亿速云 阅读:269 作者:Leah 栏目:编程语言

apache中怎么使用伪静态规则,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

apache   mod_rewrite模块提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求。它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制。此URL操作可以依赖于各种测试,比如服务器变量、环境变量、HTTP头、时间标记,甚至各种格式的用于匹配URL组成部分的查找数据库。

apache   mod_rewrite模块提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求。它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制。此URL操作可以依赖于各种测试,比如服务器变量、环境变量、HTTP头、时间标记,甚至各种格式的用于匹配URL组成部分的查找数据库。三门峡妇科医院http://www.smxrlyy.com/

 使用此模块的条件

1.在apache的httpd.conf里开启LoadModule rewrite_module modules/mod_rewrite.so即把前面的 ‘#’去掉

    如果有操作httpd.conf的权限可以直接在httpd.conf里配置,但多是在网站目录下.htaccess文件里配置

     如果在.htaccess里配置需开启支持.htaccess

           AllowOverride All使.htaccess文件生效

1 2 Options indexes FollowSymlinks3 AllowOverride All4 Order allow,deny5 Allow from all6

第二行有indexes的话是允许列出目录文件,没有或者-indexes则表示不允许列出目录文件

 示例目录结构

re在apache根目录下

apache中怎么使用伪静态规则

re下demo文件

1 <?php2 echo $_GET['id'];3 echo "
";4 echo "re下的demo
";5 echo "[object Object]";6 echo $_SERVER['PHP_SELF'];7 ?>

r1,r2下demo和demo一样,只是第四行分别为"r1下demo","r2下demo"标志

error.html文件里代码也只是标志各自位置

.htaccess文件

1 2 RewriteEngine On3 RewriteBase /re/4 5 RewriteCond  %{HTTP_HOST}  localhosT [NC]6 RewriteRule      demo(\d+)\.html         demo.php?id=$1 
7 8 ErrorDocument    404   error.html9

其中RewriteBase+demo.php是真实文件存在位置,如果没设置此项则以.htaccess文件所在目录为基准

 如果按以上的.htaccess

结果:

apache中怎么使用伪静态规则

apache中怎么使用伪静态规则

若:

当不匹配时



   ErrorDocument    404   error.html
去找当前RewriteBase 下的error.html


RewriteCond  %{HTTP_HOST}  localhosT [NC]
这句时匹配前的判断条件
如果%{HTTP_HOST} 是localhost就进行下面的RewriteRule
[NC]表示不区分大小写
 注意localhosT,[NC]两者之间有空格

关于 apache中怎么使用伪静态规则问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI