Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的Django应用程序不能与Apache/mod_python一起工作?_Django_Apache_Mod Python - Fatal编程技术网

为什么我的Django应用程序不能与Apache/mod_python一起工作?

为什么我的Django应用程序不能与Apache/mod_python一起工作?,django,apache,mod-python,Django,Apache,Mod Python,我有Apache安装程序来处理来自以下目录的请求: /var/www/html/www.mysite.com Django网站位于/var/www/html/www.mysite.com/mysite 我在请求/mysite/app/foo时遇到此错误: (大堆栈跟踪) AttributeError:“模块”对象没有属性“公用” “myapp.common”是settings.py文件中安装的_apps中所有django应用程序(例如“django.contrib.admin”)之后列出的第一项

我有Apache安装程序来处理来自以下目录的请求:

/var/www/html/www.mysite.com

Django网站位于/var/www/html/www.mysite.com/mysite

我在请求/mysite/app/foo时遇到此错误:

(大堆栈跟踪) AttributeError:“模块”对象没有属性“公用”

“myapp.common”是settings.py文件中安装的_apps中所有django应用程序(例如“django.contrib.admin”)之后列出的第一项。如果我更改所列模块的顺序,Django将阻塞它遇到的某个应用程序的第一条路径

Python导入路径似乎是正确的,因为它正在查找mysite.settings:

<Location "/mysite/"> SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE mysite.settings PythonOption django.root /mysite PythonDebug On PythonPath "['/var/www/html/www.mysite.com'] + sys.path" </Location> SetHandler python程序 PythonHandler django.core.handlers.modpython SetEnv DJANGO_设置_模块mysite.SETTINGS PythonOption django.root/mysite 蟒蛇 PythonPath“['/var/www/html/www.mysite.com']+sys.path” 有什么问题吗?奇怪的是,当实际列表包含“mysite.common”时,它却抱怨“common”:

INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'mysite.common', .... 已安装的应用程序=( “django.contrib.admin”, “django.contrib.auth”, “django.contrib.contenttypes”, “django.contrib.sessions”, “django.contrib.sites”, “mysite.common”, ....
这是Django bug还是我有什么配置错误?可能需要向导入路径添加一些外部依赖项?Django开发服务器可以正常工作。

您的
mysite
目录是否包含
\uu init\uuuuuuuuuupy
文件?它应该是存储在下的包。

mysite.common
e> /var/www/html/www.mysite.com/mysite/common?如果是这样,请尝试在
已安装的应用程序中使用
common
,而不是
mysite.common
,我猜你是故意模糊了你的实际模块名,这很好……但我在命名我的Django站点(在你的例子中是mysite)时出现了这个错误与sys.path中其他位置存在的Python模块同名

例如,如果您创建了一个名为math的Django站点,其中包含一个名为common的应用程序,则会出现此错误,因为Python系统数学模块不包含名为common的属性或子模块

您必须重命名Django站点,以避免与其他模块名称冲突