Mac安装MAMP 4.0后启动服务器出现Bad Request错误求助
解决MAMP 4.0启动后访问出现「Bad Request: Size of a request header field exceeds server limit」的问题
嘿,我之前也碰到过一模一样的问题!大概率是浏览器缓存的Cookie或者请求头数据堆得太多,超出了MAMP自带Apache服务器的默认限制,或者就是浏览器端的缓存搞的鬼。这里有几个亲测有效的解决方法,你可以挨个试试:
先试试清理Chrome的缓存和Cookie
- 打开Chrome,按下快捷键
Cmd + Shift + Delete调出清除浏览数据的界面 - 勾选「Cookie和其他网站数据」以及「缓存的图片和文件」
- 时间范围直接选「所有时间」,点击「清除数据」
- 重启Chrome后再访问
http://localhost:8888/MAMP/看看
- 打开Chrome,按下快捷键
如果清理缓存没用,就调大Apache的请求头限制
- 打开MAMP,点击顶部菜单栏的「MAMP」→「Preferences」(偏好设置)
- 切换到「Apache」标签页,点击「httpd.conf」按钮打开配置文件
- 在文件里搜索
LimitRequestFieldSize和LimitRequestLine这两个参数:- 如果找不到这两行,直接在文件末尾添加:
LimitRequestFieldSize 1048576 LimitRequestLine 1048576 - 如果已经存在,把它们的默认值(一般是8192)改成更大的数,比如上面的1048576(1MB)就完全够用
- 如果找不到这两行,直接在文件末尾添加:
- 保存配置文件,回到MAMP先点「Stop Servers」再重新「Start Servers」
- 再次访问页面测试
快速验证:用无痕模式访问
按下Cmd + Shift + N打开Chrome无痕窗口,直接访问目标页面。如果无痕模式能正常打开,那基本就能确定是普通窗口的缓存Cookie问题,按第一个方法清理就行
这个错误的本质是浏览器发送的请求头(比如Cookie里存了太多不同网站的会话数据)超过了Apache服务器允许的最大大小,所以要么清理浏览器端的冗余数据,要么调大服务器的限制值,两种思路都能解决问题。
内容的提问来源于stack exchange,提问作者Gloria
相关产品推荐
相关产品推荐

