CentOS 6.X httpd-2.4.41 httpd.conf の編集項目

----------------------------------------------------------------------------

ErrorLog・CustomLog 書込みフォーャbトは、あなたの仕様に合わせてください。
/var/www/html/www.smiyasaka.com は、私の場合の DocumentRoot です。
----------------------------------------------------------------------------
編集コャ塔h  指定行へのジャンプは、:[行番号]
              最終行へのジャンプは、[Shift]g
              先頭行へのジャンプは、1[Shift]g

vi /usr/local/apache2/conf/httpd.conf

行番号の追加コャ塔h ---> :set number

行番号は、編集後です。注意してください。
()内の行番号は、オリジナルの行番号です。

httpd.conf の行番号は、バージョンによって少しの違いがありますのでよく確認して
編集してください。
-----------------------------------------------------------------------------

100(100)行目あたり SSI を利用するためのモジュール

LoadModule include_module modules/mod_include.so のコメントを外す

104(104)行目あたり # が無いか確認する(圧縮モジュールの組込み)

LoadModule deflate_module modules/mod_deflate.so のコメントを外す

142(142)行目あたり  ここ忘れると SSI 動かない

 LoadModule cgid_module modules/mod_cgid.so のコメントを外す

162(162)行目あたり       ○○○○は、ユーザー名

User daemon
Group daemon
    ↓   ↓
User ○○○○
Group ○○○○

184(184)行目あたり   ○○○○@○○○○は、あなたのメールアドレス

#ServerAdmin you@example.com
ServerAdmin ○○○○@○○○○

193(193)行目あたり   ○○○○は、ホスト名

#ServerName www.example.com:80
ServerName ○○○○:80

200〜203(200〜203)行目あたり コメントアウト

#<<Directory />
#    AllowOverride none
#    Require all denied
#</Directory>

217(217)行目あたり

#
#  あなたの環境でのドキュメントルートを設定する。
#  下記は、私のサーバ機でのドキュメントルートです。
#
#DocumentRoot "/usr/local/apache2/htdocs"
<Directory "/usr/local/apache2/htdocs">
    ↓   ↓   ↓
DocumentRoot "/var/www/html/www.smiyasaka.com"
<Directory "/var/www/html/www.smiyasaka.com">

231(231)行目あたり IndexesをIncludesに書換えてSSICGIを有効にする。
    -Indexesディレクトリを直接リクエストされインデックスが存在しない時に
    ファイルの一覧を作成させない。

Options Indexes FollowSymLinks
    ↓   ↓   ↓
Options Includes FollowSymLinks ExecCGI
Options -Indexes

239(238)行目あたり  .htaccessの有効化
                私の場合、ホームページアクセス時のエラー表示で使用しています。

#AllowOverride None
AllowOverride All

252(251)行目あたり インデックスファイルを設定 index.cgi を追加する。

<IfModule dir_module>
   DirectoryIndex index.html index.cgi
</IfModule>

259(258)行目あたり

<Files ".ht*">
    Require all denied
</Files>
    ↓   ↓   ↓
<Files *.html>
  ForceType text/html
  SetOutputFilter INCLUDES
</Files>

271(269)行目あたり

#ErrorLog logs/error_log
    ↓   ↓   ↓
ErrorLog "| /usr/local/apache2/bin/rotatelogs\
 /usr/local/apache2/logs/www.smiyasaka.com_elog_%Y%m%d 86400 540"

301(298)行目あたり コメントアウトして追加する

#    CustomLog logs/access_log common

#******************************************************************************
#	不要なログの記録をさせない設定
#******************************************************************************
# 
# 拡張子による制限
SetEnvIf Request_URI "\.(gif)|(jpg)|(jpeg)|(png)|(bmp)|(ico)|(css)|(swf)$"\
 no-logfile

# 内部からのアクセスをログに記録しない対策
# IPアドレスによる制限 ローカル
SetEnvIf Remote_Addr 192\.168\. no-logfile

# サーチエンジンのログは取らない。
SetEnvIf User-Agent "Gigabot" no-logfile
SetEnvIf User-Agent "Googlebot" no-logfile
SetEnvIf User-Agent "MJ12bot" no-logfile
SetEnvIf User-Agent "msnbot" no-logfile
SetEnvIf User-Agent "psbot" no-logfile
SetEnvIf User-Agent "TurnitinBot" no-logfile
SetEnvIf User-Agent "Yahoo! Slurp" no-logfile
SetEnvIf User-Agent "Zealbot" no-logfile

# ワームによる制限のログは取らない。
SetEnvIf Request_URI "default\.ida" no-logfile
SetEnvIf Request_URI "null\.ida" no-logfile
SetEnvIf Request_URI "NULL\.IDA" no-logfile
SetEnvIf Request_URI "cmd\.exe" no-logfile
SetEnvIf Request_URI "root\.exe" no-logfile
SetEnvIf Request_URI "Admin\.dll" no-logfile
SetEnvIf Request_URI "^/_mem_bin/" no-logfile
SetEnvIf Request_URI "^/_vti_bin/" no-logfile
SetEnvIf Request_URI "^/c/" no-logfile
SetEnvIf Request_URI "^/d/" no-logfile
SetEnvIf Request_URI "^/msadc/" no-logfile
SetEnvIf Request_URI "^/scripts/" no-logfile

# CGIディレクトリ
SetEnvIf Request_URI "^/cgi-bin/" no-logfile

# 巡回ロボットがアクセスする robots.txt
SetEnvIf Request_URI "robots\.txt" no-logfile

# 長いURLへの対処
#
# Apacheのログローテートの 86400 540 の意味
# ローテートする周期を"秒"で指定します。
# 86400 ---> 24時間周期で行う指示 60秒 × 60分 × 24時間 = 86400秒
# 540   ---> Apacheの時間管理は、UTC なので
# 日本時間用のオフセット値 60分 × 9 = 540分
#
# ログファイルは、www.smiyasaka.com_alog_( 年月日 )のファイル名で保存されます。
#
SetEnvIf Request_Method "(GET)|(POST)|(PUT)|(DELETE)|(HEAD)" logfile 
SetEnvIf Request_Method "(OPTIONS)" no-logfile 
CustomLog "| /usr/local/apache2/bin/rotatelogs\
 /usr/local/apache2/logs/www.smiyasaka.com_alog_%Y%m%d 86400 540"\
 combined env=!no-logfile

380(334)行目あたり   コメントアウト DocumentRoot 内で CGI 使用可能している為

#    ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"

414〜418(350〜354)行目あたり   コメントアウト

#<Directory "/usr/local/apache2/cgi-bin">
#    AllowOverride None
#    Options None
#    Require all granted
#</Directory>

462(398)行目あたり   # を取り .pl を追加する

# To use CGI scripts outside of ScriptAliased directories:
# (You will also need to add "ExecCGI" to the "Options" directive.)
#
AddHandler cgi-script .cgi .pl

473〜474(409〜410)行目あたり
  # を取り .htmlの追加  ssiの実行ファイルを.html .shtm をOKにする

   AddType text/html .shtml .html
   AddOutputFilter INCLUDES .shtml .html
</IfModule>


最終行(568(503)行目あたり)に追加する

# 転送データの圧縮設定(画像以外全て圧縮する)
# 圧縮レベル 1
# 圧縮レベルを上げると逆に CPU に負荷をかけるため表示が遅くなります。
#
<IfModule deflate_module>
    # 圧縮レベル 1 に設定
     DeflateCompressionLevel 1
  <Location />
    # Insert filter
    SetOutputFilter DEFLATE
    #
    # gzip圧縮に対応していない古いブラウザを除外
    # Netscape 4.x has some problems...
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    # Netscape 4.06-4.08 have some more problems
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    # MSIE masquerades as Netscape, but it is fine
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    #
    # 画像以外全て圧縮する
    # Don't compress images
    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
    #
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
  </Location>
    # 圧縮の確認用ログ設定
    # 不要になったら、# で無効にしておく事。
    # Deflateが有効になっているか確認するログの出力
    DeflateFilterNote Input instream
    DeflateFilterNote Output outstream
    DeflateFilterNote Ratio ratio
    LogFormat '"%r" %{outstreamn/%{instreamn (%{ration%%) %{User-agenti' deflate
    CustomLog logs/deflate_log deflate
</IfModule>
#--------------------------------------------------
# セキュリティ対策のため、最終行に追加しておきます。
# サーバ情報(バージョン)の非表示
ServerTokens Prod
# サーバ署名(バージョンとサーバ名)のOFF
ServerSignature Off
---------------------------------------------------------------------------