3

我觉得这可能是一个非常简单的问题,但我正在尝试学习使用 python/django 进行编码,这样我就可以为我的家人构建一些简单的博客网站,并且无法将我的网站部署在 Hostmonster 上。我想我已经接近了,但我遇到了以下错误:

使用 newproject.urls 中定义的 URLconf,Django 尝试了这些 URL 模式,顺序如下: ^admin/ 当前 URL 不匹配任何这些。

我花了很多时间弄清楚如何在我的共享 HostMonster 帐户上加载 python、django 等,并认为当我加载一个通用的、未修改的 djangonewproject并让 django “它工作!”时我已经弄清楚了。屏幕,但是一旦我取消注释 urls.py 和 settings.py 中的行以启用管理模块,我就会遇到上述错误。

这是我的.htaccess文件:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$
RewriteCond %{REQUEST_URI} !^/mysite/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /mysite/$1
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$
RewriteRule ^(/)?$ /mysite/jarr.fcgi [QSA,L]

这是我的jarr.fcgi文件:

#!/home3/usr/python/bin/python
import sys, os
sys.path.insert(0, "/home3/usr/django/django_projects/newproject")
sys.path.insert(0, "/home3/usr/python")
sys.path.insert(0, "/home3/usr/python/lib")
sys.path.insert(0, "/home3/usr/python/lib/python2.7")
sys.path.insert(0, "/home3/usr/python/lib/python2.7/site-packages")
sys.path.insert(0, "/home3/usr/django/django_src")
os.environ['DJANGO_SETTINGS_MODULE'] = "newproject.settings"
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")

最终得到“它成功了!”真是令人沮丧。经过数周的工作后,我从我的 hostmonster 帐户中提取,但是我什至无法启用管理员,更不用说构建一个实际的站点,这在我的本地计算机上非常容易。任何建议将不胜感激。

4

2 回答 2

2

我为您创建了一个示例 django 项目,它可以轻松地托管在共享托管服务提供商上。您可以在 github - https://github.com/psjinx/django-example-project-shared-hosting上找到它。

我已经回答了alok提出的一个相关问题,您也可以研究一下。

如果您仍有一些问题,请在评论中发布。

于 2013-01-18T13:42:24.450 回答
1

注意错误信息:

The current URL, , didn't match any of these.`

这意味着 Django 没有得到任何 URI 信息。原因是这一行:

 RewriteRule ^(/)?$ mysite/jarr.fcgi [QSA,L]

请注意,唯一可能导致fcgi调用脚本的是访问“索引”,即使这样也没有给出 URI 信息。你会希望你RewriteRule的东西像

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ mysite/jarr.fcgi/$1 [QSA,L]

(重要的部分是/$1

尝试将 移动jarr.fgci到您域的公共“根”(即,不在 下mysite)并将您的规则更改为:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ jarr.fcgi/$1 [QSA,L]

您仍然可以将文件放在由 apache 直接提供服务的目录中。

于 2013-01-20T09:27:23.353 回答