2016-08-26 16 views
0
location/{                                                  
root $root_path;                                                 
try_files $uri $uri/ @gosite;                                              
expires max;                                                  
access_log off;                                                  
}                                                     

location @gosite { 
    proxy_pass http://localhost:9110; 
} 

私は403を得たhttp://site/に来て、ユーザーが/ページの上に来たときに私はproxy_passを行うことができますどのように(バックエンドで、ページハンドラは「/」で動作しますか)?nginxのproxy_pass /場所

/詳細のようなURIであれば、すべてはあなたが禁止されたファイルにアクセスしようとしているときにエラー403が来るバックエンド

答えて

0

からnginxの側とページで[OK]を、静的なコンテンツです。

私はあなたの問題を正確に理解することはできませんが、403エラーで心配している場合は、localhost:9110のプロジェクトフォルダ内のインデックスファイル(nginxで定義したもの)をチェックアウトする必要があります。 。

サーバブロックのアクセスログをオンにして、http://site/にアクセスしたときにアクセスしているファイルを確認し(chmodを使用して)、そのファイルをチェックアウトしてくださいファイル。

0

次の2つのオプション... try_filesの文から$uri/句を除去することにより、静的なディレクトリの存在のため

停止のテストがあります。また

location/{ 
    ... 
    try_files $uri @gosite; 
    ... 
} 
location @gosite { 
    proxy_pass http://localhost:9110; 
} 

を、URIのための特定の場所を追加/

location/{ 
    ... 
    try_files $uri $uri/ @gosite; 
    ... 
} 
location @gosite { 
    proxy_pass http://localhost:9110; 
} 
location =/{ 
    proxy_pass http://localhost:9110; 
} 

Incidently、$uri/句は詐欺に有用ですindex directiveとの接合部。静的なindex.htmlファイル(またはこれに類するもの)を使用していない場合は、おそらく$uri/節は必要ありません。

403エラーは、文書ルートにindex.htmlという静的ファイルがないことが原因です。