Apache

Top / Apache

正規表現の謎

(?i:hoge) とか (?i) が使えない環境あり?(そもそも使えるのか確認してないけど元々そう書いてあった.htaccessは存在する

アクセス制限

  • v6アドレスでアクセスしている場合はv4アドレスで制限/許可しても無効
  • ローカルだと127.0.0.1でアクセスするので、グローバルIPを与えても無効
  • v4で名前が引けてもv6で名前が引けなければドメインを書いても無効

$0の扱い

/var/www下のCGIで $0 は /var/www/hoge.cgi のように展開される。
設定で変えられるのかは未調査。

SSIと文字コード

SSIでincludeしているとMETAタグ無視して AddDefaultCharset の文字コードと認識される??
Firefox1.5 + Apache2.0(Debian)でそんなになった。

sites-enabled の順序

Debianな設定ファイルよりの話。

sites-enabledの読込順序はファイル名。

Include /etc/apache2/sites-enabled/[^.#]*

a2ensite の中で、default の時だけは 000-default でシンボリックリンクを作るようにしてある。

2.0 → 2.2 変更時の修正 with Debian

2006-10-04現在、phpは使えない?
てか suexec も動いてないので捨てー。

2006-10-12 追記

Forcing reload of web server  (apache2)...
Syntax error on line 141 of /etc/apache2/apache2.conf:
Invalid command 'Order', perhaps misspelled or defined
by a module not included in the server configuration failed!

dist-upgradeじゃ↑とかいわれるようにまでなったので、
一旦全部 purge して再インストール。

上の症状は Bug#392058: apache2.2-common: apache fails to start とか参照。
http://thread.gmane.org/gmane.linux.debian.devel.apache/9279/focus=9279

再インストール後の手順

a2enmod

  • auth_basic
  • authn_file
  • authz_user
  • authz_groupfile
  • userdir
  • suexec

suexec が利かないのは setuid されてないせいな。
http://kitaj.no-ip.com/tdiary/20061004.html

chmod 4755 /usr/lib/apache2/suexec

アップグレード時の変更点

suexec ↑参照

認証周り

認証周りのものの a2enmod

命名規則はこんなんらしい。

mod_auth_XX認証の方法を提供
mod_authn_XX認証バックエンドをサポート
mod_authz_XX承認(アクセス制御)を提供
mod_authnz_XX認証と承認(アクセス制御)の両方をサポート

http://www.atmarkit.co.jp/flinux/special/apache22/apache01.html

a2dismod しておくもの

シンボリックリンクがなくてもロードされるようになった?
と、思いきや purge 後は普通に cgi が存在した。
謎。

  • cgi
  • dav_svn

SSL with Debian (etch)

# まずはモジュール
sudo a2enmod ssl

次に証明書の作成。
/usr/sbin/make-ssl-cert を使う(apache2-ssl-certificate は etch にはない)。
デフォルトが 30日なので make-ssl-cert を編集して有効期間延長(-days 365)。

  if [ "$1" != "generate-default-snakeoil" ]; then
- openssl req -config $TMPFILE -new -x509 -nodes -out $output -keyout $output > /dev/null 2>&1
+ openssl req -config $TMPFILE -new -x509 -days 365 -nodes -out $output -keyout $output > /dev/null 2>&1

生成。

sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

sites-available/ssl を適当に編集。

# 適当
Listen 443

NameVirtualHost *:443
<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile ssl/apache.pem

    DocumentRoot /var/www
</VirtualHost>

以下略。

期間延長

上記 make-ssl-cert を再実行したあと apache を再起動。

SSL 関係捕捉

  • https でアクセスさせる
    SSLRequireSSL
  • この辺 のリスク回避
    • オレオレ証明書をネットを経由させずに持ち運んでブラウザに記憶させる

トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-06-29 (金) 22:58:12 (6145d)