0

Apacheは次のように構成されています。

Alias /git /var/www/gitweb
Alias /gitweb /var/www/gitweb

<Directory "/var/www/gitweb">
  AllowOverride None
  Options +ExecCGI +Indexes
  Order allow,deny
  Allow from all

  DirectoryIndex gitweb.cgi
  AddHandler cgi-script .cgi

  SetEnv GITWEB_CONFIG /var/www/gitweb/gitweb.conf
</Directory>

Gitwebをセットアップしようとしていますが、恐ろしい404 - No projects found問題が発生し続けます。通常、これはパーミッションエラーであるため、パーミッションを持たないperlによって何かが印刷されたかどうかを確認したかったので、このコマンドを使用してターミナルから実行しました。

sudo -u apache GITWEB_CONFIG=/var/www/gitweb/gitweb.conf perl gitweb.cgi

スクリプトは、すべてのリポジトリが適切にリストされた(つまり、404がない)HTMLをエコーし​​ました。

ここに質問があります:なぜ同じスクリプトがApacheから実行され、端末の動作が異なるのでしょうか?

4

1 に答える 1

1

問題はSELinuxでした。私のリポジトリはディレクトリにあり/home/gitます。httpdサービスは、デフォルトではそのディレクトリにアクセスできませんでした。

実行setsebool -P httpd_enable_homedirs=1し、問題は解決されました。

于 2012-12-06T23:30:00.320 に答える