NGINX和CGitconfiguration

我想要设置CGit和NGINX。 我差不多在那里,但是我的NGINX的conf文件中的重写规则有问题。

目前我有这个:

server { listen 80; server_name cgit.mydomain.com; index cgit.cgi; gzip off; root /usr/share/webapps/cgit; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/cgit.cgi; location / { try_files $uri @cgit; } location @cgit { auth_basic "Restricted"; auth_basic_user_file /path/to/my/password_file; gzip off; rewrite ^/([^/]+/.*)?$ /cgit.cgi?url=$1 break; fastcgi_pass fcgiwrap; } } 

我知道,当我在看demo_repo_1.git的URL应该看起来像http://cgit.mydomain.com/cgit.cgi?url=gitolite-admin.git (或类似的东西?),而是它看起来像http://cgit.mydomain.com/cgit.cgi/gitolite-admin.git/ ,它不起作用(因为在cgit.cgi脚本不能从URL读取正确的数据,并不能显示正确的关于我的回购信息。

此外,如果我强制我认为它应该(在我的浏览器中复制并粘贴“正确”的URL)的URL,下载cgit.cgi脚本。

我可以帮助一下这个重写规则吗?