Linux下如何让Apache忽略网站 URL 的大小写?

赞赏 2016-07-12

Linux 服务器访问路径都是区分大小写的,那么搭建了 Apache 后访问 www.abc.com/Index.html 和 www.abc.com/index.html 访问的路径是不一样的,如下图所示,实际首页是 Index.html:

Linux下如何让Apache忽略网站 URL 的大小写?

要解决这个问题,需要使用使用 Apache 的 mod_speling 模块。

注意:启动了 CheckSpelling 可能会降低 Apache 的执行效率。


全新编译安装 Apache

编译安装 Apache 时把 mod_speling 模块也编译了,如

./configure --prefix=/usr/local/apache2 --enable-so --enable-speling

修改 Apache 的配置文件 httpd.conf,加上:

LoadModule speling_module     modules/mod_speling.so
CheckSpelling On

 这样就启用了 mod_speling 模块。

 


只编译安装 mod_speling 模块

假设 Apache 安装目录是 /usr/local/apache2。

  1. 确认 /usr/local/apache2/modules 目录下存在 mod_speling.so 模块。
  2. 编译 mod_speling.so 模块, 进入 Apache 源码的 modules/mappers/ 目录,运行如下命令自动编译、安装和修改 httpd.conf 文件,激活 mod_speling.so 模块:
    /usr/local/apache2/bin/apxs -c -i -a mod_speling.c
    • -c 执行编译操作。

    • -i  安装操作,安装一个或多个动态共享对象到服务器的 modules 目录。

    • -a 自动增加一个 LoadModule 行到 httpd.conf 文件,以激活此模块,若此行存在则启用之。

    • -A 与 -a 类似,但是它增加的 LoadModule 行前有井号前缀(#)。

    • -e 需要执行编辑操作,可与 -a 和 -A 选项配合使用,与 -i 操作类似,修改 httpd.conf 文件,但并不安装此模块。

    apxs 命令选项说明

   3.  在 /usr/local/apache2/conf/httpd.conf 中添加:

LoadModule speling_module     modules/mod_speling.so
CheckSpelling On

   4.  重启 Apache:

/usr/local/apache2/bin/apachectl restart 或 service httpd restart
登陆后阅读全文
阅读 1494 赞赏 0 有用 0 没用 0 收藏 0 分享

   


作者声明:本篇文章系本人原创,欢迎分享,但未经许可,谢绝转载。

0 条留言

linux分享的头像

linux分享

每个软件都有确定的用途

相关文章

微信公众号开发遇到 redirect uri 参数错误 和 config:invalid url domain

Linux Apache 运行配置参数的调优

Apache 如何关闭目录访问?

tomcat报warinig Unable to add the resource at [] to the cache

如何实现编译安装的 Apache 服务,随系统自动启动?

面对国内外种类繁多的短网址服务,到底应该选择哪一种?

Apache 出现 winnt_accept: Asynchronous AcceptEx faile?

linux下如何开启 Apache 伪静态模块?

如何隐藏 Apache 版本信息?

CentOS 6.5系统下 Apache 如何配置 https 服务?

有料推荐

这世界欠我一个这样的老公!

高校学生模仿“世界名画”摆拍,可以说是戏精本精了

iPhone X 跌破发行价,苏宁200亿入股恒大 | 财经日日评

果然是高手!这次在日本,特朗普竹杠敲得不是一般狠

资深黄牛现身说法:iPhone X价格秒变不停,就像炒股一样

长一样的双胞胎也能识别?蚂蚁金服发布「眼纹识别」技术

苏联是怎么被阿富汗拖垮的?

美团或入局「分时租赁」共享汽车,王兴要大笔投入「泛出行」领域了? | 36氪独家

你或许被“一盘番茄炒蛋”刷屏了,但有人辛酸,有人质疑

iPhone X发售前夜,黄牛与苹果公司的不安

他的文章

我是如何执行 "rm -rf ~" 的

正态分布为什么常见?(财富的分布却不符合正态分布)

Linux下窗口管理器 xmonad 的使用教程

用披萨做比喻来解释 IaaS,PaaS,SaaS 的区别

如何制作CSR(证书私钥和证书请求文件)文件?

php RedisException with message read error on connection

Windows环境下ping丢包或不通时链路测试工具推荐

Linux下ping丢包或不通时链路测试工具推荐

链路测试结果分析说明及常见链路异常场景和测试报告

SSH 登录时出现如下错误:login: Module is unknown

手机扫一扫
分享文章