[Zend Framework] Zend Server: アプリケーションの動作確認をする(2)
Zend Server – アプリケーションの動作確認をする(1) | deadwood でひとまずの動作は可能になりました。
続けてバーチャルホストの設定をしてみます。
Contents
Note
このエントリーの内容は、おそらく以前のバージョンで有効だった方法です。
Zend Server 6.0 では、こちらの設定方法がベストです。
http://vhsp.dev:10088/ で表示できるようにしてみます。
編集が必要なファイルは、以下の3つです。
- /etc/hosts
- /usr/local/zend/apache2/conf/httpd.conf
- /usr/local/zend/apache2/conf/extra/httpd-vhosts.conf
また編集後、Apache のリスタートをします。
参考サイト
hosts
Mac OS X のファイルを編集して、vhsp.dev とローカルのサーバを紐づけます。
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
# Zend Server Virtual Host configuration
127.0.0.1 vhsp.dev
最後に書き加えました。
httpd.conf
ファイル内でバーチャルホスト設定がコメントアウトされているので、これを外して有効にします。
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
httpd-vhosts.conf
ファイル内にあった設定のサンプルを活かしつつ、参考サイトをみながら修正しました。
<virtualHost *:10088>
ServerAdmin <あなたのメールアドレス>
DocumentRoot "/Users/<あなたの名前>/projects/vhsp/public"
ServerName vhsp.dev
SetEnv APPLICATION_ENV "development"
# ErrorLog "logs/dummy-host2.example.com-error_log"
# CustomLog "logs/dummy-host2.example.com-access_log" common
<directory "/Users/<あなたの名前>/projects/vhsp/public">
DirectoryIndex index.php
Options FollowSymLinks
AllowOverride none
Order deny,allow
Deny from all
Allow from 127.0.0.1
</directory>
</virtualHost>
SetEnv APPLICATION_ENV "development"
を書いておくことで、開発時に詳細なエラーが表示されるようになります。
Zend_Application – エラーの確認方法 | deadwood
表示確認
変更を反映させるために、Apache をリスタートします。
% sudo /usr/local/zend/bin/apachectl restart
http://vhsp.dev:10088/ をブラウザで表示させます。
※ スクリーンショットを使い回していますが、正しいアドレスで表示できるはずです。
補遺、のつもりがほぼメイン
ちなみに Apache をリスタートしたときに、下記の警告がでていたので、あわせて解決してみます。
% sudo /usr/local/zend/bin/apachectl restart
httpd: Could not reliably determine the server's fully qualified domain name, using <あなたのMacの名前>.local for ServerName
[Sat Jun 15 22:11:10 2013] [warn] NameVirtualHost *:10088 has no VirtualHosts
-e /usr/local/zend/bin/apachectl restart [OK]
1つめは、ServerName の設定がないということらしいので、該当箇所を探してコメントアウトを消し、localhost を設定。
ServerName localhost:10088
2つめは、何のことやら分からなかったんですが、どうやらこれっぽい。
confを2つ読み込んでる?!
linux – Apache 2 startup warning: NameVirtualHost *:80 has no VirtualHosts – Server Fault
Or its (NameVirtualHost *:80) added twice in your apache2 Confing file.
/usr/local/zend/apache2/conf/httpd.conf を見直したら、末尾に該当する記述が。。。
NameVirtualHost *:10088
<virtualHost *:10088>
#ZEND-{3C8CB58DE7E1D71F5239B2E8BF52B5CB}
Include "/usr/local/zend/etc/sites.d/zend-default-vhost-10088.conf"
#ZEND-{3C8CB58DE7E1D71F5239B2E8BF52B5CB}
</virtualHost>
#ZEND-{1B36F6C287C08B12A6286BA8E7FC6C33}
#ZEND-{EE824B05A52935203B21FF14672661E6}
Include "/usr/local/zend/etc/sites.d/globals-*.conf"
Include "/usr/local/zend/etc/sites.d/vhost_*.conf"
#ZEND-{EE824B05A52935203B21FF14672661E6}
結果、かなりのショックを受ける解決法だったのだが、長くなりそうなので次回へ続く。
このやり方はやり方で勉強になりました。