Ubuntu13.04マシンでnginxサーバーを使用してgit-http-backendを機能させるのに問題があります。以前にDebian7で試してみましたが、同様の結果が得られました。基本的に私は http://weininger.net/configuration-of-nginx-for-gitweb-and-git-http-backend/ に従いましたが、gitwebに関することは何も無視しました。
私は次のことをしました:
以下を使用してnginx、git、git-core、fcgiwrapをインストールしました。
apt-get install git git-core nginx fcgiwrap
/var/git/test.gitにベアリポジトリを作成し、www-dataにchownしました。
mkdir -p /var/git/test.git
cd /var/git/test.git
git init --bare
git update-server-info
chown -R www-data:www-data /var/git
/ etc/nginx/sites-enabled/defaultをに置き換えました
server {
listen 80;
server_name localhost;
location / {
root /var/git;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend;
fastcgi_param PATH_INFO $uri;
fastcgi_param GIT_PROJECT_ROOT /var/git;
fastcgi_param GIT_HTTP_EXPORT_ALL "";
include /etc/nginx/fastcgi_params;
}
}
するとき
GIT_CURL_VERBOSE=1 git clone http://localhost/test.git
印刷します:
Klone nach 'test'...
* Couldn't find Host localhost in the .netrc file; using defaults
* About to connect() to localhost port 80 (#0)
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 80 (#0)
> GET /test.git/info/refs?service=git-upload-pack HTTP/1.1
User-Agent: git/1.8.1.2
Host: localhost
Accept: */*
Accept-Encoding: gzip
Pragma: no-cache
* The requested URL returned error: 500 Internal Server Error
* Closing connection 0
error: The requested URL returned error: 500 Internal Server Error while accessing http://localhost/test.git/info/refs?service=git-upload-pack
fatal: HTTP request failed
/var/log/nginx/error.logには、このリクエストのエントリは含まれていません。 git-http-backendがログファイルを書き込むかどうかはわかりませんが、ログファイルが見つかりませんでした。
この設定の何が問題になっているのか分かりますか? 500エラーに関する詳細情報/ログを取得する方法を知っていますか?
500エラーが発生したため、次のようになります。
500 Internal Server Error while accessing http://localhost/test.git/info/refs?service=git-upload-pack
Nginxエラーログを見ながら、Webブラウザでそのアドレスにアクセスしてみてください。エラーログは、次の方法で「インタラクティブに」表示できます。
tail -f /var/log/nginx/error.log