LoginSignup
2
3

More than 5 years have passed since last update.

OSX ServerのApacheでユーザディレクトリ(/~hoge)を有効化

Last updated at Posted at 2016-06-06

OSX ServerでServer.appをアップデートすると、Apache2のhttpd.confがサクっと上書きされて、手書きで入れてた設定が消えてしまい、どこになに書いてるかわからなくなりがち。
今回は、/~hogeでアクセスするユーザディレクトリを有効化する設定が消えてしまい難儀したので覚え書き。
やることはググればいくらでも出てくる。コメントアウトされた

LoadModule userdir_module libexec/apache2/mod_userdir.so

Include /private/etc/apache2/extra/httpd-userdir.conf

の有効化と、ユーザディレクトリ内にSitesフォルダを作成すること。
しかい設定ファイルの場所が問題。
OSXでは/etc/apache2/や/private/etc/apache2/にhttpd.confがあるけど、これを書き換えても反映されない。
正解は、
/Library/Server/Web/Config/apache2/httpd_server_app.conf
でした。また上書き前のファイルは、
/Library/Server/Web/Config/apache2.previous/
にフォルダごと残ってた。
サイトを複数作ってる場合は、その下のsites/に個別のインクルードファイルがあるので、そっちを書き換えた方がいいかも。
どこかに、Server.app上書きやOSアップデートでも上書きされず、かつデフォルトでインクルードされるファイルもあるのかも知れないですが、よくわかりません。ご存じの方がいたら教えていただきたく。

そして、上記に指定した通り、
/private/etc/apache2/extra/httpd-userdir.conf
にユーザ共通の設定がありますが、さらにここから
/private/etc/apache2/users/*.conf
がインクルードされていて、ユーザ毎にAllowOverrideしたりするのはこっちでやるのがいいみたい。

ついでの参考にデフォルトのドキュメントルートは、
/Library/Server/Web/Data/Site/
ですね。サイト毎の親フォルダがこの下にできてるはず。

やっぱ自宅サーバー減らしたくて集約してみてるけど、やっぱLinuxの方が情報も多いし慣れてて手早いなぁ。VMWare FusionでCentOSサーバーでも立てるか、流行のDockerに手を出すべきか...

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3