HTTPリクエストでファイル名の大文字小文字の識別せず表示させる

Windows環境では、大文字小文字を識別しませんが、Linux環境では、大文字小文字を 識別するため、Windows環境からLinux環境移行時や本番環境と検証環境で 異なる場合に特定ページが404エラーとなることがある。
本来であれば、すべて洗い出して修正するのが筋であるが、Apache側の設定で 回避する方法を説明します。 ※サーバへの負荷を与えるので、負荷状況に合わせて、適応範囲を限定するなど対策が必要です。
具体的な例

URLパス http://www.hoge.co.jp/img/pimg.png
実パス /var/www/hoge/img/Pimg.png

Windows環境では、200OKとなるが、Linux環境では404エラーとなる。

Linux環境で大文字小文字を識別せず表示させるためには、「CheckSpelling」を有効化する。
 # vi /etc/httpd/conf/httpd.conf
LoadModule speling_module modules/mod_speling.so
<Directory "/var/www/hoge/img/">
  <IfModule mod_speling.c>
    CheckSpelling On
  </IfModule>
</Directory>
※「CheckSpelling」は、リクエストされたドキュメントの名前を 大文字小文字の区別を無視し、 一文字までの 綴りの間違い (文字の挿入/省略/隣合う文字の置換、間違った文字) を許可します。

Google+