nginx + php-fastcgiでうまく動作するサイトがたくさんあります。唯一動作しないのは、Gallery3というPHPギャラリーアプリケーションです。残念ながら、私はこのアプリケーションでApacheを使用する必要があります。次のように私が持っている問題は、次のとおりです。Apache + Nginxリバースプロキシがデフォルトでindex.phpを提供していません
gallery.wfto.cc - 動作しません(それが解析され取得されていないためにindex.phpのPHPコードを含む、名前のファイルをダウンロード)
ギャラリー。 wfto.cc/ - 動作しません(同じもの)
はgallery.wfto.cc/index.php - (同じことを)動作しません
gallery.wfto.cc/index.php/- 動作します。
gallery.wfto.cc:9001(すべてのバリエーション) - 動作します。
私は何が起こっているのか分かりません。私は下の私の構成の大部分を含んだ。 /etc/nginx/conf.d/proxy.confは一般的なプロキシ設定ですが、特別なものはありません。
##NGINX CONFIG##
server {
listen 80; ## listen for ipv4
listen [::]:80 default ipv6only=on; ## listen for ipv6
root /var/www/vhosts/wfto.cc/subdomains/gallery;
server_name gallery.wfto.cc;
access_log /var/log/nginx/gallery.wfto.cc.access.log;
location/{
proxy_pass http://127.0.0.1:9001;
include /etc/nginx/conf.d/proxy.conf;
}
}
## APACHE CONFIG ##
<VirtualHost *:9001>
ServerAdmin [email protected]
DocumentRoot /var/www/vhosts/wfto.cc/subdomains/gallery
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
</IfModule>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/vhosts/wfto.cc/subdomains/gallery/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
nginxサーバーのエントリが実際に使用されていて、偶然に他のものが使用されていないことを確認してください(例:URLのドメイン名のスペルが間違っていますか?アクセスログを確認して確認してください。いくつかの愚かなことを確認する:nginxを再起動すると、実行中のプロセスが停止した後に生きていないことを確認する。 'root 'を空のディレクトリに変更してください(もしApacheにすべてをプロキシしているなら、nginxはコンテンツにアクセスする必要はありません)。 –
私は、nullディレクトリ(空のディレクトリ)を指すようにrootを変更しましたが、何も変更されません。そのサーバーブロックは、そのサブドメイン上のトラフィックを捕捉する唯一のブロックです。 – meinemitternacht
空のディレクトリに変更した後、あなたのテストが実際にApacheに到達したかどうか、Apacheのアクセスログをチェックしましたか? "同じ結果"(index.phpのコンテンツのダウンロードを前提としています)が得られれば、ブラウザが単にキャッシュされた結果を返すだけである可能性もあります。 –