如何在Django子目录中安装WordPress?

时间:2010-06-27 17:55:22

标签: python django wordpress mod-rewrite fastcgi

我在http://stevencampbell.org/

的服务器上设置了Django

我希望能够在stevencampbell.org/blog /

上运行WordPress

我通过Fast_CGI运行我的所有Python和Django文件(我的服务器上只有Django选项)。我的.htaccess文件如下所示:

AddHandler fastcgi-script .fcgi
RewriteEngine On
RewriteRule ^(/media.*)$ /$1 [QSA,PT]
RewriteRule ^(/adminmedia.*)$ /$1 [QSA, PT]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi/$1 [QSA,L]

假设我需要在博客目录中添加另一个RewriteRule,但到目前为止我没有尝试过。我可以访问/blog/index.php,但是/ blog /给了我一个Django错误,这意味着该目录仍然由dispatch.fcgi文件处理。

另外,我不确定我正在使用这些重写规则做什么。如果我做错了什么,请告诉我。

2 个答案:

答案 0 :(得分:1)

AddHandler fastcgi-script .fcgi
RewriteEngine On
RewriteRule ^(/media.*)$ /$1 [QSA,PT]
RewriteRule ^(/adminmedia.*)$ /$1 [QSA, PT]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/blog(/.*)?$
RewriteRule ^(.*)$ dispatch.fcgi/$1 [QSA,L]

看到额外的RewriteCond?基本上说“如果请求 /blog/blog/whatever,则然后重写请求dispatch.fcgi

.htaccess内的WordPress /blog中,您应该在RewriteBase /blog/声明后添加行RewriteEngine On

答案 1 :(得分:0)

这听起来有点尴尬。我不太了解mod_rewrite来检查你的设置,但为什么不简单地使用基于Django的博客引擎而不是wordpress。或许像http://github.com/nathanborror/django-basic-apps这样的东西?