更改apache当前目录的python脚本

时间:2018-10-29 13:59:45

标签: django python-3.x apache mod-wsgi

我已经使用mod_wsgi模块将Apache设置为可与Django应用一起使用。这是/etc/apache2/sites-enabled/yaraweb.conf的内容:

<VirtualHost my_server_ip:port>
    DocumentRoot /var/www/YaraWeb

    Alias /static /var/www/YaraWeb/yara/static
    <Directory /var/www/YaraWeb/yara/static>
            Require all granted
    </Directory>

    <Directory /var/www/YaraWeb/YaraWeb>
            <Files wsgi.py>
                    Require all granted
            </Files>
    </Directory>

    WSGIDaemonProcess YaraWeb python-home=/var/www/YaraWeb/venv python-path=/var/www/YaraWeb
    WSGIProcessGroup YaraWeb
    WSGIScriptAlias / /var/www/YaraWeb/YaraWeb/wsgi.py

/var/www/YaraWeb的结构如下:

/var/www/YaraWeb
│   manage.py    
│
└───venv
│   │   bin
│   │   include
│   │   lib
│   │   pip-selfcheck.json
|   |   share
│   
└───yara  => django app
|   │   admin.py
|   │   apps.py
│   |   forms.py
│   |   __init__.py
|   │   main.py
|   │   migrations
│   |   models.py
│   |   static
|   │   templates
│   |   urls.py
│   |   views.py
│    
└───YaraWeb
    │   __init__.py
    │   settings.py
    |   urls.py
    |   wsgi.py

一切正常,服务器已启动,但问题是,当在我的代码中views.py内登录当前工作目录时,它返回/var/www,但我希望它是{{1} }。换句话说,我需要以下python代码片段来打印/var/www/YaraWeb/

/var/www/YaraWeb/

在服务器代码中,用于创建目录的相对路径被大量使用。通过使用相对路径,开发人员已假定所有创建的目录都在项目文件夹中创建,即import os print(os.getcwd()) # actually prints /var/www/ ,但是使用当前的Apache设置,所有相对路径都尝试在/var/www/YaraWeb/内创建目录,这可能会导致覆盖现有目录其他项目中的文件。是否有任何Apache设置可以更改此行为?

0 个答案:

没有答案