Hatena::Groupmoti

Apache

Apache

目次

NameBased VirtualHost

/etc/apache2/apache2.conf に以下の設定を追記.

NameVirtualHost *

"*"のところに,サーバのIPアドレスを書いてもいい.*1

/etc/apache2/sites-available/example.com に以下の設定に変更.

<VirtualHost *>
        ServerAdmin root@example.com
        ServerName example.com
        ServerAlias www.example.com
        DocumentRoot /var/www/

すでに, NameVirtualHost * と書いてある行があったら,削除するかコメントアウトしておいたほうがいい気がする.もしかしたら,apache2.confではなくこっちに書くのが正しいのかもしれない.

大事なのは,apache2.confに設定した"*"やIPアドレスとサイト別設定ファイル example.com のVirtualHostディレクティブ 内に設定されている"*"やIPアドレスが同じでないといけないということ.

理由は知らないけれど,予想としてはまず同じIPかどうかをチェックしてから次にServerNameの判別にうつる仕組みで,そもそもIPが違ってるとエラーがでるっていう.

apache2.confに設定したIPアドレスが,ほかのどこでも使われていないとエラが出る気がする.

misc

自動Index作成設定

以下のせっていにするとファイル名項目が70文字表示になる.

Alias /foo "/mnt/bar"

<Location /foo>
   Options +Indexes
   IndexOptions +NameWidth=70
</Location>

.htaccess

CGIが動作するように

     AddHandler cgi-script .cgi
     DirectoryIndex hoge.cgi

rewrite

debug

正規表現にマッチしているかなどを確認するため,以下のコードを「/etc/apache2/httpd.conf」などに追記する.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLogLevel 9
RewriteLog /var/log/rewrite.log
</IfModule>

ルール

RewriteEngine On
#RewriteBase /keyword
RewriteRule ^keyword/(.*)$ /~tosi/wiki/index.php?$1

*1:IPアドレス:ポート番号 と書いてもいい

* はてなダイアリーキーワード:Apache