SVN migrating from Windows to Linux
After setting up the environment, the Chinese name warehouse cannot be accessed via HTTP
Command line test Normal
SVN Co svn://xx.xx.xx.xx/test
But it doesn't work with HTTP.
SVN Co http://xx.xx.xx.xx/test
View Apache error logs
Error found
(20014) Internal error (Specific information not available): Can ' t convert string from ' UTF-8 ' to native encoding:
(20014) Internal error (Specific information not available):/webapp/svndata/?\\230?\\150?\\135?\\228?\\187?\\182?\\230?\\ 136?\\150?\\231?\\155?\\174?\\229?\\189?\\149/format
Unable to transcode Chinese UTF-8
Some people say that the error number is not greater than 255, it should be ASCII encoding only turned 7 bits, the high-lost.
Search n Multiple Solutions No, I thought it was a bug.
Finally find the answer on the official website
Http://svnbook.red-bean.com/en/1.8/svn.serverconfig.httpd.html#svn.serverconfig.httpd.ref.mod_dav_svn
SVNUseUTF8 On|Off
When set On
to, MOD_DAV_SVN 'll communicate with hooks scripts using repository root paths encoded in UTF-8, a nd would expect those scripts to likewise generate output (such as error messages) encoded in UTF-8. The default value of this option Off
was, which means that mod_dav_svn assumes a 7-bit ASCII encoding for its HO OK script interactions. This option is available as of Subversion 1.8.
650 "this.width=650;" alt= "[ Note] "src=" Http://svnbook.red-bean.com/en/1.8/images/note.png "style=" border:none; "/> |
|
Administrators should ensure that the character set and encoding expectations of hooks scripts match all the ways they migh t be invoked. For example, if one repository are served by both httpd and svnserve, svnserve should also be co Nfigured to use UTF-8 (by setting a appropriate locale in IT environment) if this option was enabled for mod_dav_svn< /c3>. Also, local filesystem paths containing non-ascii characters which would be accessed by those scripts (such as repository R Oot paths) must is properly encoded in the filesystem to match the scripts ' expectations. |
Finally, add in Apache config file httpd.conf
<ifmodule mod_dav_svn.c>
SVNUseUTF8 on
</IfModule>
Restart Apache, problem solving!!
Of course this parameter is only valid in version 1.8.
This article is from the "confused" blog, please be sure to keep this source http://tommypage.blog.51cto.com/6689011/1925166
subversion-1.8.17+apache2.2.32 HTTP cannot access Chinese warehouse name