2016-09-23 12 views
1

これは私のものです。 nginx/dokkuで動作するPHPアプリケーションを手に入れました。X-Accel-Redirectは外部からは動作しますが、内部からは動作しません

イメージアセットをリダイレクトする場所があります。セイ:ブラウザに示す画像、中

https://test.rokfor.ch/cdn/dummyimage.com/600x400/000/fff 

結果。内部エラーで

header('X-Accel-Redirect: /cdn/dummyimage.com/600x400/000/fff'); 
exit(0); 

結果:

のようなPHPスクリプト内で同じリソースを呼び出します。 Nginxの設定は次のようになります。

location ~ ^/cdn/(.*?)/(.*) { 
    resolver 8.8.8.8; 
    proxy_set_header HOST $1; 
    proxy_pass "https://$1/$2?$args"; 
} 

潜在的な問題は何ですか?私はどの方向に見えるのかわからないので。

+0

エラーログには何がありますか? – VBart

+0

「2016/10/03 12:20:59 [エラー] 249#0:* 47「https:// dummyimage.com/600x400/000/fff'」のURLプレフィックスが無効です。何とかしているようですsslに関連しています:私は場所を 'proxy_pass" http:// $ 1/$ 2?$ args ";'(httpsなし)に変更すると動作するようですが、私には役立ちません - httpsが必要です! – rokfor

+0

いつでも、 'location'ディレクティブ内で何かを変更したいのですが、/app/nginx_app.conf:6の' nginx:[emerg] unknown directive "proxy_ssl_server_name"のようなエラーが出ます。Nginxは '--with-http_ssl_module' OpenSSLで構築されたバージョン1.10です。 – rokfor

答えて

0

okが - それを見つけた:

Dokkuは、SSLサポートなしで内部的にnginxの1.8を実行します。 Proxy_pass to httpsしたがってにはの作業はできません。私は元のheroku php buildpackをforkして問題を回避し、nginxの依存関係を1.10にプッシュし、sslサポートで構築されたnginxバージョンを提供する追加のリポジトリを追加しました。

関連する問題