Я пытаюсь настроить CGit и NGINX. Я почти готов, но у меня проблема с правилом перезаписи в файле conf моего NGINX.
В настоящее время у меня есть это:
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;
}
}
Я понимаю, что URL-адрес, когда я смотрю на demo_repo_1.git
должен выглядеть http://cgit.mydomain.com/cgit.cgi?url=gitolite-admin.git
(или что-то подобное?), но вместо этого он выглядит как http://cgit.mydomain.com/cgit.cgi/gitolite-admin.git/
, и это не работает (как в cgit.cgi
script не может прочитать правильные данные из URL-адреса и не может показать правильную информацию о моих репозиториях.
Кроме того, если я заставлю URL-адрес, который, по моему мнению, он должен быть (скопируйте и вставьте «правильный» URL-адрес в моем браузере), cgit.cgi
скрипт загружается.
Могу я получить помощь с этим правилом перезаписи, пожалуйста?