Python Django应用程序os.getcwd()显示apache服务器根目录

Python Django应用程序os.getcwd()显示apache服务器根目录,python,django,apache,mod-wsgi,Python,Django,Apache,Mod Wsgi,我使用mod_wsgi在apache上部署了一个运行良好的django应用程序。该应用程序运行良好 在我的app views.py中,我导入了django项目根目录下的模块(“mymodule.py”) 现在,当我导入模块并在模块中的一个函数中运行os.getcwd()时,我得到Apache的serverRoot作为输出(“C:\Program Files\Apache Software Foundation\Apache2.4”)。我希望它成为我的django项目的根 在使用django提供的

我使用mod_wsgi在apache上部署了一个运行良好的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"
并且服务器根目录设置为

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>
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())
import os
def myfunc():
    return os.getcwd()
mymodule.py文件如下所示-

#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>
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())
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

可能是什么错误

没有错。这似乎是当前的工作目录。我从未在django、apache和
mod\u wsgi
上尝试过,但您可以给出
os.path.dirname(\uuuu file\uu)
a try.ya这是我目前一直在使用的解决方法,但我想知道是否有任何直接的解决方案,或者我是否犯了错误。这是我知道的在文件系统中获取项目路径的唯一可靠方法。我不认为这是一种变通办法。但我期待着看到其他解决方案是否有答案。我仍将等待并观察是否有人提出解决方案或更好的解决方法。