Apache

Ifdefineディレクティブを使ってみる

ApacheのIfdefineディレクティブを使うと、起動時のパラメータでディレクティブの設定を 変えることが出来たりします。今回はこれを使った例のメモ。 設定例 IfDefineディレクティブを使うと、起動時のパラメータ たとえば、以下のように設定してみます。 <IfDefine MAINTENANCE> D</ifdefine>…

Server Statusの情報収集スクリプト

以前にこんなエントリを書きました。 サーバー運用していると、定期的に情報収集したくなるものです。 ということで、Server Status 情報をCSVファイルにするスクリプトを作ってみました。 動くものができたので、公開してみる事にします。 Perlで書いていま…

htpasswdで8文字以上のパスワードを設定する

先日これで軽くハマったので備忘的に。 Apacheでベーシック認証を行う場合、「htpasswd」コマンドで パスワードファイルを作成します。 8文字以上のパスワードを付けたい場合は、「-m」オプションを付けて、 パスワードの暗号化アルゴリズムをMD5にする事。 …

エラーメッセージとその対処あれこれ

今回はApacheのエラーメッセージと対処について思いつくところをまとめてみました。 ポートが競合している (98)Address already in use: make_sock: could not bind to address [::]:80 no listening sockets available, shutting down Unable to open logs …

UseCanonicalNameにご注意

UseCanonicalNameはOffにしておくほうが良いだろうという話です。 動作について 例えば以下のようなURLがあります。 http://xxx.xxx.xxx.xxx/directory 「http://xxx.xxx.xxx.xxx/directory」がディレクトリであった場合、 Apacheが最後の"/"を補完しようと…

Apacheの状況をServerStatusとServerInfoから見る

今回はApacheの動作や設定値の状態を見る方法を。 Apacheには現在の動作状況や、httpd.confの設定状況を見る手段が用意されています。 今回はそれらを有効にする方法を簡単にまとめます。 Apacheの動作状況を見る mod_statusを有効にします。ソースファイル…

httpdを直接実行する

備忘録的に。 apachectlを使わないで直接httpdを実行する場合のオプションをメモすることにします。 Apacheは「/usr/local/apache」にインストールされていると仮定ということで。 起動/停止など 結局apachectlの中でも同じことをやっているわけですが。 起…

RPM版Apacheをworkerで動作させる

RPM版のApacheはそのままだと「prefork」で動作します。 # /etc/init.d/httpd start httpd を起動中: [ OK ] # ps -fe | grep httpd root 2851 1 0 22:14 ? 00:00:00 /usr/sbin/httpd apache 2852 2851 0 22:14 ? 00:00:00 /usr/sbin/httpd apache 2853 2851…

UTF-8のhttpd.confでエラー

本日Apacheをいじっていたら、こんな Syntax error に遭遇しました。 少し調べたのでメモ。 # /usr/local/httpd-2.2/bin/apachectl configtest Syntax error on line 1 of /usr/local/httpd-2.2.15/conf/httpd.conf: Invalid command '\xef\xbb\xbfServerRoo…

Webサーバ(Apache)をちょっとだけ安全に公開するためにできることを挙げてみる

普段基本的にやっていることを書いてみる事にします。 (掘り下げると奥が深いと思いますが…。最低限、ということで。) 専用ユーザ/専用グループ/権限など Userを 「Apache専用ユーザ」に Groupを 「Apache専用ユーザ」に 権限を制限した専用ユーザを作って…