Apache rewrite 出现 400 Bad Request 的解决方法

<VirtualHost *:80 *:81>

ServerAdmin [email protected]

DocumentRoot /active/www/yingchao123/trade

ServerName trade.test.yingchao123.com

ServerAlias trade.yingchao123.com

RewriteEngine On

RewriteRule ^([\da-z]{1,10})$ ./index.php?mod=list&do=unique&alias=$1 [L]

RewriteRule ^([\da-z]{1,10})&(.+)$ ./index.php?mod=list&do=unique&alias=$1&$2 [L]

</VirtualHost>

但这样写会出现 出现 400 Bad Request 错误

解决方法是将rewrite规则写倒directory中:

<VirtualHost *:80 *:81>

ServerAdmin [email protected]

DocumentRoot /active/www/yingchao123/trade

ServerName trade.test.yingchao123.com

ServerAlias trade.yingchao123.com

<Directory "/active/www/yingchao123/trade">

RewriteEngine On

RewriteRule ^([\da-z]{1,10})$ ./index.php?mod=list&do=unique&alias=$1 [L]

RewriteRule ^([\da-z]{1,10})&(.+)$ ./index.php?mod=list&do=unique&alias=$1&$2 [L]

</Directory>

</VirtualHost>

重启Apache,问题解决

说明:apache检查配置是否语法错误httpd.exe -t 或者apachectl -t,nginx对应的命令是nginx -t

原文地址:https://www.cnblogs.com/hnhycnlc888/p/9527667.html

时间: 2024-11-24 23:22:22

Apache rewrite 出现 400 Bad Request 的解决方法的相关文章

Android studio出现Error:Unable to tunnel through proxy. Proxy returns &quot;HTTP/1.1 400 Bad Request&quot;的解决办法

最近更新了一下Android Studio(下文简写成AS),然后打开工程发现出现Error:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request",如图: 什么鬼.几番折腾,终于知道原因了.直接写解决方案吧. 1.打开设置 2.依次选择图中的第一步,第二步.并设置gradle的目录 3.设置好后应用,并点OK. 4.刷新Gradle 5.运行,错误解决 如果没有gradle,可以到:http:/

apache与IIS共用80端口冲突解决方法

如果同一台电脑安装了apache和iis,会提示80端口冲突,如何解决apache与iis 80端口冲突的问题呢,并且同时使用apache和iis 将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理. 在httpd.conf里面,取消下面四行的注释: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connec

ubuntu下安装nginx错误error: the HTTP rewrite module requires the PCRE library 解决方法

本文为大家讲解的是ubuntu下安装nginx错误error: the HTTP rewrite module requires the PCRE library 解决方法,感兴趣的同学参考下. 本文为大家讲解的是ubuntu下安装nginx错误error: the HTTP rewrite module requires the PCRE library 解决方法,感兴趣的同学参考下. 错误描述: ubuntu安装nginx时提示error: the HTTP rewrite module r

SpringMVC源码分析-400异常处理流程及解决方法

本文设计SpringMVC异常处理体系源码分析,SpringMVC异常处理相关类的设计模式,实际工作中异常处理的实践. 问题场景 假设我们的SpringMVC应用中有如下控制器: 代码示例-1 @RestController("/order") public class OrderController{ @RequestMapping("/detail") public Object orderDetail(int orderId){ // ... } } 这个控制

(转)apache外网不能访问分析与解决方法

转自:http://blog.sina.com.cn/s/blog_6bb7ebcc0101g0aw.html 说明:新手,配完到生效,机器可能有个延迟,切记,这个延迟是正常的. apache安装好以后,在本机可以用:http://localhost 或者 http://127.0.0.1进行访问,但是,在外网(相对本机来说的,局域网也算)不能访问. 这种情况可以分为两个问题,第一个是在局域网内,第二国是在互联网: 有三种情况可能造成这种现象, 1.配置文件没有设置外网访问: 2.防火墙,计算机

DAV request failed解决方法

前言 原创文章,欢迎转载,请保留出处. 有任何错误.疑问或者建议,欢迎指出. 我的邮箱:[email protected] 解决问题三个步骤:描述问题.寻找答案.分析原因. 问题描述 由于SVN提交代码和git不一样,非强制性提交log message,所以容易出现没有提交log message就commit了,这时候show log后修改log message发现提示:DAV request failed,经过一番研究得出以下的解决方法: 解决方法 在服务器上的仓库管理文件夹中的某个仓库中的h

apache外网不能访问分析与解决方法

apache安装好以后,在本机可以用:http://localhost 或者 http://127.0.0.1进行访问,但是,在外网(相对本机来说的,局域网也算)不能访问. 这种情况可以分为两个问题,第一个是在局域网内,第二国是在互联网: 有三种情况可能造成这种现象, 1.配置文件没有设置外网访问: 2.防火墙,计算机本身的防火墙禁止了外网通过80端口(默认的,也可以自定义别的)访问: 3.80端口没有对外网开放,或者局域网内,或者互联网(外网防火墙或者其他运帷软件): 如果你配置的服务器是个远

编译apache时提示“APR not found”的解决方法

今日编译apache时出错: #./configure --prefix--检查编辑环境时出现: checking for APR... no configure: error: APR not found .  Please read the documentation 解决办法: 1.下载所需软件包: wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz wget http://archive.apache.org/dist/apr

Target runtime Apache Tomcat 6.0 is not defined 解决方法(转)

问题描述: eclipse 导入项目后 Target runtime Apache Tomcat v6.0 is not defined ... 下载最新版本eclipse后,导入以前的项目,报以下错误,但不影响操作: Description Resource Path Location TypeTarget runtime Apache Tomcat v6.0 is not defined. lfpms   Unknown Faceted Project Problem 问题解决方案: 在工作