web-dev-qa-db-ja.com

nginx symlinks権限が拒否されました/ Mac OSXでは403 Forbidden

それで、Mac OSXでnginxサーバーを実行していて、どこかからnginx wwwディレクトリにシンボリックリンクを作成しようとしています。ブラウザで、すばらしい403 Forbiddenエラーが表示されます。私はまた、過去数時間、私の人生をchmodしてみました。

スタックには何もないようです。 Macでngninxがシンボリックリンクを直接サポートしているかどうかがわかりません。

disable_symlinkディレクティブを使用すると、次のような結果になります。

nginx: [emerg] unknown directive "disable_symlinks" in /usr/local/etc/nginx/nginx.conf:44`


私のセットアップに関するいくつかの情報:
nginx -vnginx version: nginx/1.4.2


シンボリックリンクを作成するには、次のようにします。

cd /Users/levi/www
ln -s "/Users/levi/Desktop/.../client" "/Users/levi/www/client"


ログのエラー:

[error] 11864#0: *7 open() "/Users/levi/www/client" failed (13: Permission denied), client: 127.0.0.1, server: _, request: "GET /client HTTP/1.1", Host: "localhost"


どんな助けでも大歓迎です。他に情報がございましたらお知らせください。

3
Levi Roberts

Nginxのシンボリックリンクがnginx 1.2.7のMacで動作することを確認できます。

次のように作成されたシンボリックリンク:

ln -s /Users/salpher/nginxtest /usr/local/opt/nginx/html/

「クライアント」ディレクトリにコンテンツがありますか?ディレクトリインデックスの参照はデフォルトで無効になっており、インデックスページがなく、URLが特定のコンテンツファイルを指していない場合は、403 forbiddenと表示されます。

ディレクトリブラウジングの場合、自動インデックスをオンにしてディレクトリ構成で有効にすることができます。

    location / {
        autoindex on;
        root   html;
        index  index.html index.htm;
    }
2
Sam Alpher

私はちょうど似たようなものに遭遇しました。ターゲットに至るまでの途中のディレクトリの1つに、あまりにも制限の厳しい権限が含まれていることが判明しました。 chmod 755 $HOME私の場合は修正しました。

0
Dan Kegel