NetCommons の固定リンク設定で404 エラー
あれ?なんで?と思いつつ調査。
で、apache のバーチャルホストでインストールしてたんだと思いだす。
で、httpd.conf のmod_rewrite の設定有無を確認。
LoadModule rewrite_module modules/mod_rewrite.so
いけてる。
で、バーチャルホスト設定を見ると、AllowOverride 設定なし。
ここか。ということで、以下のようにVirtualHost ディレクティブにAllowOverride 設定を追加。
<VirtualHost xxx.xxx.xxx.xxx>
DocumentRoot /var/xxx/xxx/xxx
ServerName xxx.opensource-workshop.jp
<Directory "/var/xxx/xxx/xxx">
AllowOverride All
</Directory>
</VirtualHost>
これでapache 再起動でイケました。
404 エラーになるのはなぜ?
apache ドキュメントのAllowOverride ディレクティブを参照すると、以下のように書いています。
http://httpd.apache.org/docs/2.2/ja/mod/core.html#allowoverrideこのディレクティブを None に設定すると、.htaccess ファイルは完全に無視されます。 この場合、サーバはファイルシステムの .htaccess ファイルを読むことを試みさえしません。
.htaccess が無視されてたから、404 エラーになってるんですね。