svn - 我怎样才能说服 mod_rewrite 远离我的 Subversion 存储库?

标签 svn apache wordpress .htaccess mod-rewrite

我有一个网站 [托管在 DreamHost 上],主要内容使用 WordPress,但 Subversion 存储库在 http://mysite/svn .

我的文件布局是:

webroot/
  blog   # wordrpress files
  .htaccess

我的 SVN 存储库位于 Web 根目录之外,但它们已正确映射到/svn/repository URL。

当我将 WordPress 永久链接重写规则放入我的 .htaccess 文件时,博客页面和永久链接运行良好,但它会破坏 Subversion。

这是我的 .htaccess 文件,删除了所有无关的内容:

RewriteEngine On
RewriteBase /

# try 1                                                                                       
#RewriteCond %{REQUEST_URI} svn [NC]                                                          
#RewriteRule . - [PT,L]                                                                       

# try 2                                                                                       
#RewriteRule ^svn.*  -  [PT,L]                                                                

# try 3
#RewriteCond %{REQUEST_URI} !^svn 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . blog/index.php [L]

最后一行中断了 Subversion。客户端错误是这样的:

$ svn ls https://mysite/svn/myrepo/
svn: PROPFIND request failed on '/svn'
svn: PROPFIND of '/svn': 405 Method Not Allowed (https://mysite)

如果我注释掉最后一行 RewriteRule 。 blog/index.php,Subversion 有效。但是让 WordPress 处理漂亮的永久链接内容并没有。

我尝试了我在上面评论过的三种“忽略任何以‘svn’开头的 URL”方法,但都没有用——它们似乎什么也没做。有或没有 PT 传递标志。

我在谷歌上搜索了很多,似乎其他人都被 mod_rewrite 和 WebDAV(Subversion 使用的)相互踩踏所困扰。我找到了 an extremely similar abandoned SO question here too ,但没有有效的解决方案。有什么线索吗?

最佳答案

我认为您应该寻求 Dreamhost 的支持。我和他们有一些网站,并且一直得到很好的支持。

无论如何,this solution怎么样? ?

SVN 仓库(SVNRepo)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} SVNRepo
RewriteRule . - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

关于svn - 我怎样才能说服 mod_rewrite 远离我的 Subversion 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2107499/

相关文章:

wordpress - 错误: Minified React error #321 on Wordpress custom block plugin

macos - git svn 克隆在 Mac OS X : "Temp file with moniker ' svn_delta' already in use"上失败

ruby-on-rails - Apache 上的 Rails 3.1,PageSpeed 在使用 Asset Pipeline apache 配置时显示 "Specify Cache Validator"

php - 您必须 cd 到哪个文件夹才能使用 "mysql --max_allowed_packet"?

google-analytics - 获取 WordPress 每天的帖子数量

php - WordPress 网站上的 APC 缓存碎片

svn - 在 cmd 行上运行 svn 命令时出错

svn - 你有没有从颠覆转变为善变?值得付出努力吗?

c# - svn 和 c#/visual studio 有什么限制吗?

javascript - 在 API 上启用 CORS