web-dev-qa-db-ja.com

ApacheFastCGIサーバー接続の失敗

過去数か月間 vagrant で問題なく使用してきたDebian wheezyの仮想マシンベースボックスがありますが、昨日持ってきたとき新しいマシンと更新/アップグレードされたパッケージを起動すると、FastCGIサーバー接続エラーエラーが発生し始めました。

[Wed Jun 04 14:39:03 2014] [error] [client 10.0.2.2] (13)Permission denied: FastCGI: failed to connect to server "/vagrant/php5-fcgi": connect() failed
[Wed Jun 04 14:39:03 2014] [error] [client 10.0.2.2] FastCGI: incomplete headers (0 bytes) received from server "/vagrant/php5-fcgi"

/tmp/php5-fpm-vagrant.sockを手動でタッチして変更することで一時的に問題を解決できますが、なぜ突然問題が発生し始めたのですか?

個人的な好みはさておき、私の設定に機能的に何か問題がありますか?:

利用可能なApacheサイトには、000phpというファイルがあります。

FastCgiExternalServer /vagrant/php5-fcgi -socket /tmp/php5-fpm-vagrant.sock -pass-header Authorization

Apacheはサイトをアルファベット順にロードするため、これは常に最初にロードされ、次にvagrantという別のファイルがあります。

<VirtualHost *:80 *:8080>
   DocumentRoot /vagrant/public_html/
   ServerName vagrant.localhost

   <Directory /vagrant/>
      AllowOverride all
   </Directory>

   AddHandler php5-fcgi .php
   Action php5-fcgi /php5-fcgi
   Alias /php5-fcgi /vagrant/php5-fcgi

   ErrorLog ${Apache_LOG_DIR}/vagrant_error.log
   CustomLog ${Apache_LOG_DIR}/vagrant_access.log combined
</VirtualHost>

vagrant.confと呼ばれるphpfpmプール設定は次のようになります。

[vagrant]
listen = /tmp/php5-fpm-vagrant.sock

listen.allowed_clients = 127.0.0.1

user = vagrant
group = vagrant

pm = ondemand
pm.max_children = 50

任意の提案をいただければ幸いです

2
bruchowski

答えを見つけました、これは https://bugs.php.net/bug.php?id=6706 によって引き起こされました

修正は、次の行をvagrant.conf phpfpm構成ファイルに追加することでした。

listen.owner = www-data
listen.group = www-data
2
bruchowski