質問

私のスケーラブル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 /
.

この OpenShift Thread

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top