您好,我犯了php脚本subverison麻烦。 我正在使用Nginx的Web服务器发送请求到Apache服务器使用mod_proxy设置nginx的提交文件,svn结帐和更新工作正常。
服务器{
听80;
server_name svn.server;
位置 / {
access_logclosures;
proxy_pass http:// localhost:8081;
proxy_set_header X-Real-IP $ remote_addr;
proxy_set_header主机$主机;
proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;
}
位置〜^ / repos /.*。php $ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
包括fastcgi_params;
}
}
问题是,与PHP fastcgi设置的位置块。 当SVN进行提交时,它会执行PUT到以文件名结尾的URI,例如
PUT /svn-test-work/repositories/authz_tests-7/!svn/txr/1-1/A/D/G/rho
回购里面的path是/A/D/G/rho 。
您没有看到更新和检出问题的原因是您可能正在使用仍在使用批量更新的客户端或服务器。 批量更新意味着不是为文件发出HTTP GET请求,所有内容都包含在REPORT请求中。 较新的客户端会发出一个GET请求,并会看到结帐和更新的问题。
我猜想的PHP FastCGI设置是为您的SVN服务器的某种基于Web的用户界面。 您需要将其放在唯一的url上,而不是放在与您的存储库相同的url下。