Linux

目次

インストール,Install

CentOS 6

  • apache のインストール
    yum install httpd
  • php のインストール
    yum install php-common php-mbstring
  • ssl(https 認証)系のインストール
    yum install openssl mod_ssl

.htaccess による制御方法

作成

AuthUserFile /var/honya/honya/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Input! UserName & Password(^^)"
AuthType Basic
require valid-user

.htaccess が有効にならない

  • <Directory /> の設定を確認する。
    同様に Indexes も有効にならない時がある。
    <Directory />
       AllowOverride All
       Options Indexes FollowSymLinks
    </Directory>

htpasswd

  1. 最初の1人目
    htpasswd -c /var/honya/honya/.htpasswd (username)
  2. 2人目以降
    htpasswd /var/honya/honya/.htpasswd (username)

apache が作成するファイルの umask を変更する。

echo "umask 002" >> /etc/sysconfig/httpd
/etc/init.d/httpd restart

Ubuntu(debian)系、apache実行ユーザー

  • 下記に記述あり
    /etc/apache2/envvars

RewriteEngine? が有効にならない時

  • Options に FollowSymLinks? があることを確認する

redirect(url の転送)

httpd.conf による転送

  • 例) ルートディレクトリを転送する http://tar3.net/ -> https://www.tar3.net/
    • vi /etc/httpd/conf/httpd.conf
      <Directory />
      #    Options FollowSymLinks
      #    AllowOverride None
      Redirect / https://www.tar3.net/
      </Directory>

htmlでリダイレクト

  • vim index.html
    <meta http-equiv="refresh" content="0; URL='http://new-website.com'" />

チューニング

参考サイト

前提

  • CentOS6 を使用(RedHat? clone)

mpm 関連設定

  • sudo vi /etc/httpd/conf/httpd.conf
  • 自分はこんな感じ
    <IfModule prefork.c>
     StartServers      10
     MinSpareServers   10
     MaxSpareServers   10
     ServerLimit      100
     MaxClients       100
     MaxRequestsPerChild  1000
    </IfModule>
  • 上から3つ(Start, Min, Max)見たとおり。子プロセスの数。
  • 次のLimit と Max は同時接続数。 − 一番下のMaxリクエストは、いくつリクエストを処理したら
    httpd のSpareServer?を作りなおすか。

Timeout, KeepAlive?

  • sudo vi /etc/httpd/conf/httpd.conf
  • Timeout のデフォルト300秒は長すぎ。もっと短くする。
  • KeepAlive? はオフにする。
    Timeout 60
    KeepAlive Off

logファイル関連。

  • sudo vi /etc/httpd/conf/httpd.conf
  • HostnameLookups? をオフにする。
    HostnameLookups Off

Log解析

Visitors

Webalizer

Link

  1. (外部リンク)Webalizerの設定ファイル(webalizer.conf ) の簡単解説
  2. (外部リンク)WebAlizer Readme
  3. (外部リンク)Download

Install

  • 関連するパッケージのインストール
    sudo yum install zlib-devel libpng-devel libgd-devel libdb-devel libbz2-devel GeoDB GeoIP GeoIP-update gd
  • rpm のダウンロード
    wget http://li.nux.ro/download/nux/misc/el7/x86_64/webalizer-2.23_08-2.el7.nux.x86_64.rpm
  • rpm のインストール
    sudo rpm -ivh webalizer-2.23_08-2.el7.nux.x86_64.rpm

設定ファイル

  • 設定ファイルのデフォルトは以下ですが、今回は通常のログとSSLのログを解析するために2つの設定ファイルを作りました。
  • default
    • /etc/webalizer.conf
  • 通常のログ(not SSL)用
    • /etc/webalizer.conf.access
  • SSL用
    • /etc/webalizer.conf.ssl

解析結果ファイル(history, current)が保管される場所の作成

sudo mkdir /var/lib/webalizer/access
sudo mkdir /var/lib/webalizer/ssl

設定内容(access_log)

  1. 最初にログを読み込む時(過去のデータを抹消)
    • 一番古いログファイルを指定
      • LogFile? /var/log/httpd/access_log-20190127
    • Output ディレクトリの指定
      • OutputDir? /var/www/html/webalizer/access
    • HistoryName? の指定
      • HistoryName? /var/lib/webalizer/access/webalizer.hist
    • 増分解析の有無
      • Incremental no
    • 増分解析用のcurrentファイル
      • IncrementalName? /var/lib/webalizer/access/webalizer.current
    • 解析結果ページのタイトル
      • ReportTitle? Access Usage Statistics for
    • DNSCache ファイル
      • DNSCache /var/lib/webalizer/access/dns_cache.db
  2. 次のログを読み込む時(過去のデータを保持)
    • 次に古いログファイルを指定
      • LogFile? /var/log/httpd/access_log-20190203
    • 増分解析の有無
      • Incremental yes
  3. 最終的な設定
    • 最新のログファイルを指定
      • LogFile? /var/log/httpd/access_log

設定内容(ssl_access_log)

  1. 最初にログを読み込む時(過去のデータを抹消)
    • 一番古いログファイルを指定
      • LogFile? /var/log/httpd/ssl_access_log-20190127
    • Output ディレクトリの指定
      • OutputDir? /var/www/html/webalizer/ssl
    • HistoryName? の指定
      • HistoryName? /var/lib/webalizer/ssl/webalizer.hist
    • 増分解析の有無
      • Incremental no
    • 増分解析用のcurrentファイル
      • IncrementalName? /var/lib/webalizer/ssl/webalizer.current
    • 解析結果ページのタイトル
      • ReportTitle? Access Usage Statistics for
    • DNSCache ファイル
      • DNSCache /var/lib/webalizer/ssl/dns_cache.db
  2. 次のログを読み込む時(過去のデータを保持)
    • 次に古いログファイルを指定
      • LogFile? /var/log/httpd/ssl_access_log-20190203
    • 増分解析の有無
      • Incremental yes
  3. 最終的な設定
    • 最新のログファイルを指定
      • LogFile? /var/log/httpd/ssl_access_log

解析の実行

  • accessファイル
    webalizer -c /etc/webalizer.conf.access
  • sslファイル
    webalizer -c /etc/webalizer.conf.ssl

実行後の調整

  • 実行後のページで過去の表示がおかしい場合、以下のファイルを編集したり削除したりする
    sudo vim /var/lib/webalizer/access/webalizer.hist
    sudo vim /var/lib/webalizer/ssl/webalizer.hist
    
    sudo rm /var/lib/webalizer/access/webalizer.hist
    sudo rm /var/lib/webalizer/ssl/webalizer.hist
    
    sudo rm /var/lib/webalizer/access/dns_cache.db
    sudo rm /var/lib/webalizer/ssl/dns_cache.db
    
    sudo rm /var/lib/webalizer/access/webalizer.current
    sudo rm /var/lib/webalizer/ssl/webalizer.current

定期実行ファイルの修正

sudo vi /etc/cron.daily/00webalizer 
  • #!/bin/bash
    # update access statistics for the web site
    
    NAME=webalizer
    
    [ -f /etc/sysconfig/$NAME ] || exit 0
    source /etc/sysconfig/$NAME
    
    [ "z$WEBALIZER_CRON" != "zyes" ] && exit 0
    
    exec /usr/bin/webalizer -Q
  • #!/bin/bash
    # update access statistics for the web site
    
    #NAME=webalizer
    #
    #[ -f /etc/sysconfig/$NAME ] || exit 0
    #source /etc/sysconfig/$NAME
    #
    #[ "z$WEBALIZER_CRON" != "zyes" ] && exit 0
    #
    #exec /usr/bin/webalizer -Q
    
    webalizer -c /etc/webalizer.conf.access
    webalizer -c /etc/webalizer.conf.ssl

ScreenShot?

apache_httpd-WebAlizer-screenShot01.png


apache_httpd-WebAlizer-screenShot02.png

添付ファイル: fileapache_httpd-WebAlizer-screenShot02.png 44件 [詳細] fileapache_httpd-WebAlizer-screenShot01.png 44件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-02-23 (土) 19:17:47 (85d)