0
votes

I have install and config ALL the apache2 & mod_dav_svn, but when access the http://host/svn/ , got this:

ps:the /mnt/svn/ is the parsent of all svn repos. and the repos is named using utf8 already.

os: ubuntu 11.10 server 64bit apache2 -v Server version: Apache/2.2.20 (Ubuntu) Server built: Feb 14 2012 16:35:38

locale: also export in /etc/apache2/envvars LANG=zh_CN.UTF-8 LANGUAGE=zh_CN LC_CTYPE="zh_CN.UTF-8" LC_NUMERIC="zh_CN.UTF-8" LC_TIME="zh_CN.UTF-8" LC_COLLATE="zh_CN.UTF-8" LC_MONETARY="zh_CN.UTF-8" LC_MESSAGES="zh_CN.UTF-8" LC_PAPER="zh_CN.UTF-8" LC_NAME="zh_CN.UTF-8" LC_ADDRESS="zh_CN.UTF-8" LC_TELEPHONE="zh_CN.UTF-8" LC_MEASUREMENT="zh_CN.UTF-8" LC_IDENTIFICATION="zh_CN.UTF-8" LC_ALL=zh_CN.UTF-8

[Wed Feb 29 14:54:34 2012] [notice] Apache/2.2.20 (Ubuntu) DAV/2 SVN/1.6.12 configured -- resuming normal operations

[Wed Feb 29 14:54:42 2012] [error] [client ] Unable to deliver content. [500, #0] [Wed Feb 29 14:54:42 2012] [error] [client *] couldn't fetch dirents of SVNParentPath [500, #22]

[Wed Feb 29 14:54:42 2012] [error] [client *] Error converting entry in directory '/mnt/svn' to UTF-8 [500, #22]

[Wed Feb 29 14:54:42 2012] [error] [client *] Can't convert string from native encoding to 'UTF-8': [500, #22]

[Wed Feb 29 14:54:42 2012] [error] [client *] ?\231?\160?\148?\229?\143?\145?\233?\131?\168?\231?\174?\161?\231?\144?\134 [500, #22]

2
Just to be sure: would this question help? stackoverflow.com/questions/2116718/…VonC

2 Answers

1
votes

edit /etc/apache2/envvars, change LANG from C to your locale language setting.

I did the following modification, then restarted apache2, no more problem.

export LANG=C --> export LANG="en_US.UTF-8"

0
votes

You haven't somewhere support of your zh_CN.UTF-8. It can be:

  • Ubuntu

check readability of ls /mnt/svn/

  • Apache

create http-only location, add to it some zh_CN.UTF-8 named files and directories, disable DirectoryIndex and verify result in browser for readability

I suppose, test #2 will failed

Edit

From the subversion book:

Errors like this typically occur when the Subversion client has received a UTF-8 string from the repository, but not all of the characters in that string can be represented using the encoding of the current locale. For example, if your locale is en_US but a collaborator has committed a Japanese filename, you're likely to see this error when you receive the file during an svn update.

To fix this error message you have to set your current locale appropriately