昨天我设置了Apache服务我的Mercurial存储库,并让所有的东西都正常工作。然后,我测试了将更改推回到此存储库并显示错误,现在,我尝试的每一个操作都会弹出一个错误 - 即使只是一个简单的存储库GET请求!这是错误:Mercurial:权限被拒绝hgwebdir
mod_wsgi (pid=1771): Target WSGI script '/var/hg/hgweb.wsgi' cannot be loaded as Python module.
mod_wsgi (pid=1771): Exception occurred processing WSGI script '/var/hg/hgweb.wsgi'.
Traceback (most recent call last):
File "/var/hg/hgweb.wsgi", line 18, in ?
application = hgwebdir(config)
File "/usr/lib64/python2.4/site-packages/mercurial/hgweb/__init__.py", line 15, in hgwebdir
return hgwebdir_mod.hgwebdir(*args, **kwargs)
File "/usr/lib64/python2.4/site-packages/mercurial/hgweb/hgwebdir_mod.py", line 52, in __init__
self.refresh()
File "/usr/lib64/python2.4/site-packages/mercurial/hgweb/hgwebdir_mod.py", line 82, in refresh
self.repos = findrepos(paths)
File "/usr/lib64/python2.4/site-packages/mercurial/hgweb/hgwebdir_mod.py", line 36, in findrepos
for path in util.walkrepos(roothead, followsym=True, recurse=recurse):
File "/usr/lib64/python2.4/site-packages/mercurial/util.py", line 1164, in walkrepos
for hgname in walkrepos(fname, True, seen_dirs):
File "/usr/lib64/python2.4/site-packages/mercurial/util.py", line 1146, in walkrepos
for root, dirs, files in os.walk(path, topdown=True, onerror=errhandler):
File "/usr/lib64/python2.4/os.py", line 276, in walk
onerror(err)
File "/usr/lib64/python2.4/site-packages/mercurial/util.py", line 1127, in errhandler
raise err
OSError: [Errno 13] Permission denied: './dev/fd'
我的存储库目录是由apache拥有,运行Apache的用户。我不知道为什么'./dev/fd'正在被操作。我重新启动了服务器多次,重新创建了存储库目录,但无论如何我仍然遇到这个错误!我没有权限重新启动机器,所以这不是一个选项。但它似乎处于一个非常糟糕的持续状态,我不知道如何解决它。任何帮助表示赞赏!
发布您的解决方案作为答案并接受自己。 – mpen 2010-08-01 22:59:09