zoukankan      html  css  js  c++  java
  • 开启apahce的mod_speling.so模块,让使用apahce http服务器不再有大小写烦恼

    今天把服务器重新安装系统,做apache调优前,优化下apache对网络地址大小写不区分的支持。记录如下:

    编译mod_speling.so模块去除Apache-url大小写字母敏感的配置

    1. 进入apache源代码的modules/mappers/目录
    2. 运行如下命令自动编译、安装和修改httpd.conf文件,激活mod_speling.so模块:

    /www/wdlinux/apache/bin/apxs -c -i -a mod_speling.c

    选项说明:

    -c 执行编译操作
    -i 安装操作,安装一个或多个动态共享对象到服务器的modules目录
    -a 自动增加一个LoadModule行到httpd.conf文件,以激活此模块,若此行存在则启用之
    -A 与-a类似,但是它增加的LoadModule行前有井号前缀(#)
    -e 需要执行编辑操作,可与-a和-A选项配合使用,与-i操作类似,修改httpd.conf文件,但并不安装此模块

    1、下载一个与当前使用的apache一样版本的安装包

    2、解压安装包,然后进入其目录

     cd /www/wdlinux/apache/modules/mappers/
     ll

    此目录有个mod_speling.c文件

    3、生成模块

    /www/wdlinux/apache/bin/apxs -c -i -a mod_speling.c

    注:/www/wdlinux/apache/为我生产环境的apache目录,完成上述后会在/www/wdlinux/apache/modules/目录下多一个mod_speling.so模块文件
    在/usr/local/apache/conf/httpd.conf中加上

    LoadModule speling_module     modules/mod_speling.so
    CheckSpelling On

    CheckSpelling On (加上这个)

    开启CheckSpelling On 后 apache 有时会 "300 Multiple Choices"
    模块mod_negotiation:

    内容协商,更准确的来说是内容选择,是一个从几个有效的文档中,选择一个最能匹配客户端要求的文档的过程,可以使用"MultiViews"搜索(由Options指令中的MultiViews选项激活。

    这个功能看起来真的是很不错,很好的用户体验,但是在有的情况下却有点多此一举,下面就讲一下如何屏蔽这个功能,自己目前知道的有两种方法:

    1.增加错误页

    一般出现这种情况会报300的错误,可以添加错误页

    ErrorDocument 300 /errpage/400.html

    这样会自动跳转到errpage/400.html这个页面,就不会显示下载列表了

    2.打开httpd.conf,找到CheckSpelling On ,

    将 CheckSpelling On 改成 CheckSpelling Off

  • 相关阅读:
    [翻译] C++ STL容器参考手册 (总册)
    仿淘宝TAB切换搜索框
    超简单TAB切换
    程序员和项目经理驰骋职场的故事
    eclispse 闪退问题解决
    Jennic 之API学习
    JN5139 DIO中断机制
    HTTP Error503 .The service is unavailable
    纯CSS3动画:一棵跳舞的树
    【学习笔记】python 简单创建新建一个网络客户端,并返回相关的信息
  • 原文地址:https://www.cnblogs.com/mengdeep/p/4488911.html
Copyright © 2011-2022 走看看