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
该脚本与正确列出所有存储库的 HTML 相呼应(即,没有 404)。
这是一个问题:为什么相同的脚本会从 Apache 运行而终端的行为会有所不同?