2011-12-20 13 views
0

私はCentOS 6をクリーンアップしました。私はちょうどyum install httpd mysql-server, python, mysql-python経由でインストールします。クリーンインストール後のTrac。 TracError:IOError:[Errno 13]アクセスが拒否されました

まずステップ

$ trac-admin /home/tracprojects/main2 initenv

Project name: Main
SQL Connect string: mysql://[email protected]:3306/trac (base exists, utf8, innoDB)

OK.

$ trac-admin /home/tracprojects/main2 deploy /var/www/html/

OK.


第二ステップ

次にcgi-bin/trac.wsgi/cgi-bin/サーバーのエイリアスフォルダに移動します。 (mod_wsgiはうまくいきます。デーモンではなく、wsgiスクリプトでテストされています)。

私は以前作成したディレクトリ全体に対してApacheユーザーに権限を与えました。そして、Apacheの設定からアクセスを追加します。 (受注拒否)。私が間違って何

Internal Server Error 
TracError: IOError: [Errno 13] Permission denied: '/home/tracprojects/main2/VERSION' 

:私は私のブラウザを開き、URLに行くとき

しかし、私はこのエラーメッセージを持っていますか?

答えて

1

SElinux(デフォルトで有効)を使用していますか?デフォルトのSElinuxでは、私はApacheが/ homeにアクセスできないと信じています。これを確認するには、SElinuxを一時的に無効にして(rootとして "setenforce 0")、おそらくApacheを再起動します。 /var/log/audit.logもチェックしてください。

+0

もしあなたがFedoraシステムを使っているなら、あなたが問題をアドバイスし、Apacheがホームディレクトリにアクセスすることを許可するなど、いくつかの問題を解決するためのポップアップを表示する必要があります。 ただし、ファイルのコンテキストも確認してください。別のフォルダで作成され、移動されたため、コンテキストが現在存在するフォルダと一致しない可能性があります。 'ls -Z'はコンテキストを表示し、' restorecon'はコンテキストを新しい場所のデフォルトに設定します(または手動で指定する 'chcon')。 'chcon -t httpd_sys_script_exec_t(FILE)' – BRFennPocock

+1

問題解決チートシート:http://centoshelp.org/security/selinux-common-commands-troubleshooting/ – BRFennPocock

0

'/ home/tracprojects'などのアクセス権を確認します。Apacheは特別なユーザーとして実行され、ディレクトリへの読み込み、ファイルの読み込み、ファイルの書き込みができない場合があります。

mod_wsgiデーモンモードを使用して、mod_wsgiにその場所にアクセスできる別のユーザーとしてプロセスを実行する方が良い場合があります。これを行っても、WSGIスクリプトファイルディレクトリは少なくともApacheユーザーにとっては読める必要があります。

+1

問題があります:問題がありましたSELinuxセキュリティ政治。 私はそれを実行します: 'grep VERSION /var/log/audit/audit.log | audit2allow -M tracrule'を実行します。 – woozly

関連する問題