apacheのバーチャルホストのログをローテションしていなかったので、次のリンクを参考に設定しました。
サイトのアクセスログをWebalizerで解析しています。
Webalizerのアクセス解析にリファラーが表示されていませんでした。
リファラーを表示するように設定するメモです。
Webalizerの設定ファイル
パッケージでWebalizerがインストールされている場合、例えば、「/etc/webalizer.conf」がWebalizerの設定ファイルです。
(デフォルトの設定ファイルのインストール場所は、環境によって違うと思います。)
バーチャルホスト等でApacheのログを複数のファイルに出力している場合、ApacheのログファイルごとにWebalizer設定ファイルを作成すると便利と思いました。
作成したWebalizer設定ファイルは、webalizerコマンドに指定します。
Webalizer設定ファイルの次の項目を編集します。
| LogFile | apcheのログファイルのパス。 |
| OutputDir | Webalizerのアクセス解析結果の出力先。 |
| HostName | ホスト名を指定します。バーチャルホストで運用しているので指定した方がよいようです。このホスト名がアクセス解析結果出力ページの「Top 30 of 387 Total URLs」等のリンクに付加されるようです。 |
| HistoryName |
| Incremental |
| IncrementalName |
リファラーをアクセスログに出力
apche設定ファイル(httpd.conf)に「CustomLog logs/access_log common」となっている部分を次のように変更します。
“logs/access_log”は、ログの出力先で、環境によって異なります。
CustomLog logs/access_log combined
次のような行が、httpd.confに記述されていることも確認します。
“combined”がログフォーマット名になります。
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
httpd.confの設定については、「Webサーバー構築(Apache) - Fedoraで自宅サーバー構築」のページが参考になりました。
アクセス解析結果の出力
webalizerコマンドで解析結果を生成します。
解析結果の出力先や出力オプションは、Webalizerの設定ファイル(/PATH/webalizer.conf)に記述しています。
「-c /PATH/webalizer.conf」のようにして、Webalizerの設定ファイルを指定しています。
$ webalizer -c /PATH/webalizer.conf
システム管理者でもファイルを削除できなくするコマンドは?:ITpro
勉強になりました
訳あって、MySQLのsocketの位置を、/var/lib/mysql/mysql.sockから/tmp/mysql.sockに変更しました。
emacsのsql-mysqlで、mysqlに接続しているのですが、MySQLのsocketの位置を正しく認識してくれない状況になりました。
(もともとemacsのsql-mysqlで接続するために、ソケットの位置を/var/lib/mysql/mysql.sockにしていたのですが・・・)
.emacsに次を記述したところ、接続できました。
(setq sql-mysql-options '("--socket=/tmp/mysql.sock"))
PukiWiki(1.4.7)で5MBくらいのファイルを添付しようとしたところ、アップロードできていませんでした。
plugin/attach.inc.phpでini_setしている部分(upload_max_filesize)の値を変更して試したのですが、効きませんでした。
PHP: php.ini ディレクティブ - Manualを見ると、post_max_sizeとupload_max_filesizeは、ini_setでの変更はできないようです。
次の変更でアップロードできました(PHPのバージョンは、5.2.3)。
.htaccessに次を追加。
php_value memory_limit 32M php_value post_max_size 10M php_value upload_max_filesize 10M
plugin/attach.inc.phpのPLUGIN_ATTACH_MAX_FILESIZEを変更。
define('PLUGIN_ATTACH_MAX_FILESIZE', (1024 * 1024 * 10));