HAPROXYを介したHTTP認証をOpenShift
質問
私のスケーラブルOpenShift PHPアプリに基本的なHTTP認証を取得するのに苦労しています。私の.htaccessファイルでは、
AuthUserFile path/to/.htpasswd
AuthType Basic
AuthName "My App"
Require valid-user
.
私のローカルテストサーバーでは素晴らしい機能ですが、OpenShiftで使用しようとすると、503のサービスが利用できなくなり、haproxy.logに入手できます
[WARNING] 101/113040 (368468) : Server express/local-gear is DOWN, reason: Layer7 wrong status, code: 401, info: "Authorization Required", check duration: 2ms. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[ALERT] 101/113040 (368468) : proxy 'express' has no server available!
.
だから私は問題をhaproxyサーバーで持っている必要があると思いますが、それを修正する方法はありません。任意のアイデア?
多くの感謝!
解決
HaproxyがアクセスできるURLを持つ必要がある、またはそれ以外のエラーが発生する必要があります。up.htmlページを作成して、それを.htpasswd設定から除外したい場合は、haproxy / haproxy.cfgを変更して、そのURLを/
の代わりにポーリングしてください。また、その.htpasswdファイルがGit Repoの内部に格納されていない場合は、スケーリングされたアプリケーションで各ギアにコピーされません。それがあなたのgit repoにあるなら、それ故あなたのウェブのアクセス可能なフォルダの中にあるならば、それは不安です。
他のヒント
Haproxyは、特定のURLをSANITYCHECKとしてチェックする機能を提供しています。 OpenShiftはデフォルトでこれを有効にします。 正しいURLを指すようにしているか、〜/ haproxy / conf / haproxy.cfg:
を変更して無効にしてください。option httpchk GET /
.
に
に#option httpchk GET /
.
所属していません StackOverflow