Apache配置的rewrite规则

    科技2023-10-15  101

    Apache中rewrite规则代码均在

    <IfModule mod_rewrite.c>模块下 #vim /usr/local/apache2/conf/httpd.conf :156 #LoadModule rewrite_module modules/mod_rewrite.so //把#去掉

    1、域名301跳转 web服务可能会用到多个域名,域名有主有次,输入次域名会自动跳转到主域名进行访问。设定为301永久跳转,302是暂时跳转 #vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

    2、禁止指定user_agent Rewritecond %{HTTP_USER_AGENT} ^.cur1.[NC,OR] #禁止curl和chrome浏览器访问 Rewritecond %{HTTP_USER_AGENT} ^.chrome.[NC] #NC是不区分大小写的意思 RewriteRule .* - [F] #为禁止的意思

    3、通过rewrite限制某个目录 Rewritecond %{REQUEST_URI} ^./tmp/.[NC] #禁止访问tmp目录 RewriteRule .* - [F]

    4、rewrite规则 R=301强制外部重定向 [F]禁用URL,返回403HTTP状态码。 NC不区分大小写 [OR]或者

    5、rewrite变量 %{HTTP_USER_AGENT} #表示:访问的user_agent %{HTTP_HOST} 表示:当前访问的网址只是指前缀部分,格式是www.xxx.com不包括“http://”和“/” %{REQUEST_URI} #表示:表示访问的相对地址,就是相对根目录的地址,就是域名/后面的成分,格式上包括最前面的“/” www.123.com/xiang/1.html #www.123.com表示HOST,xiang/1.html表示URI

    Processed: 0.016, SQL: 8