0

次を追加して、Apache内のhttpd.confを編集しました。

<Directory /home/ec2-user/hqlocal>
Order deny,allow
Allow from all
</Directory>

WSGIScriptAlias / /home/ec2-user/hqlocal/hq_local/apache/django.wsgi
WSGIPythonPath /usr/lib/python2.7/site-packages

# Serving Django admin static files
Alias /static/admin /usr/lib/python2.7/site-packages/django/contrib/admin/static/admin
# Serving Django static files (our own files use in our app), assuming in settings.py,     STATIC_ROOT is “/var/www/static/” and our STATIC_URL is “/static/”   
Alias /static /var/www/static/

拒否と許可の交換など、403 問題を解決する多くの解決策を試しました。しかし、どれも機能しません。まだ 403 cannot access '/' が表示されます

というわけで、一行ずつコメントしてみました。

その結果、その行は

WSGIScriptAlias / /home/ec2-user/hqlocal/hq_local/apache/django.wsgi

問題の原因。

この行を追加すると、システムは 403 になりますが、それがないと、パブリック DNS に入ると、サーバーは Apache のデフォルト ページを指します。

したがって、Apache にはこのファイルを読み取る権限がない可能性があると思います。したがって、許可をグローバルに変更しました。ただし、それでも正しく動作しませんでした。

これを修正する方法を教えてください。

どうもありがとうございました。

4

2 に答える 2

0

考えられる理由は 2 つあります。

  1. ディレクトリ '/home/ec2-user/hqlocal' のアクセス許可を正しく設定していることを確認してください。これを行うことができます。

    chmod -R 755 /home/ec2-user/hqlocal

  2. selinux を無効にします (強制モードを使用している場合は、selinux で apache の権限を取得する必要があります)。/etc/selinux/config を構成できます。

    SELINUX:無効

次に、マシンを再起動します。

于 2015-02-11T19:44:23.033 に答える
0

ディレクトリ「/home/ec2-user」は、Apache ユーザーが読み取れない可能性があります。時計:

これを含む一般的な mod_wsgi セットアップの問題について。

また、次の必要はありません。

WSGIPythonPath /usr/lib/python2.7/site-packages

mod_wsgi が実際にシステム Python 2.7 に対してコンパイルされている場合。システム Python 2.7 に対してコンパイルされていないが、別のバージョンに対してコンパイルされている場合は、別のバージョンの Python にインストールされたモジュールを強制的に使用するべきではありません。問題が発生するためです。使用する正しい Python バージョンに対してコンパイルされたバージョンで mod_wsgi を再インストールする必要があります。

于 2013-10-23T17:21:16.423 に答える