Django app os.getcwd()显示了apache serverRoot

时间:2015-10-28 17:25:53

标签: python django apache mod-wsgi

我在apache using mod_wsgi上部署了一个有效的django应用程序。该应用程序工作正常。

在我的app views.py中,我导入了一个位于django项目根目录的模块("mymodule.py")。

现在,当我导入模块并在模块中的函数中运行os.getcwd()时,我将Apache的serverRoot作为输出("C:\Program Files\Apache Software Foundation\Apache2.4")。我希望它成为我的django项目的根源。

使用django提供的runserver webserver运行项目时,我得到了所需的输出("F:\DjangoPro\mysite")。

我在httpd.conf中的docroot设置为

DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.4/htdocs"

,服务器根目录设置为

ServerRoot "C:/Program Files/Apache Software Foundation/Apache2.4"

wsgi配置如下 -

#static portion
Alias /static/ F:/DjangoPro/mysite/home/static/
<Directory "F:/DjangoPro/mysite/home/static">
Require all granted
</Directory>

### Refers to the location of the wsgi file inside the project.
WSGIScriptAlias / F:/DjangoPro/mysite/mysite/wsgi.py
WSGIPythonPath F:/DjangoPro/mysite

<Directory F:/DjangoPro/mysite/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

home / views.py文件如下 -

from django.http import HttpResponse
from django.template import RequestContext, loader
from django.shortcuts import render
import time

from mymodule import *


def index(request):
    return HttpResponse(myfunc())

mymodule.py文件如下 -

import os
def myfunc():
    return os.getcwd()

我的项目结构是这个

F:
--DjangoPro
    -- mysite
        --home
            -- __init__.py
            -- admin.py
            -- models.py
            -- urls.py
            -- views.py         
        -- mysite
            -- __init__.py
            -- settings.py
            -- urls.py
            -- wsgi.py
        -- manage.py
        -- mymodule.py

可能是什么错误?

0 个答案:

没有答案