Apache 错误:将 python 日志写入项目目录之外的文件时

Apache 错误:将 python 日志写入项目目录之外的文件时

我正在开发一个 Django 项目并使用 Apache 作为 Web 服务器。一切都运行正常

python manage.py runserver

但是在通过 apache 运行应用程序时,我无法将我的 python 应用程序日志写入项目目录之外的规定路径。

项目目录/home/ubuntu/saas-DocumentProcessing

日志文件位于

/home/ubuntu/log/SaasAap/SaasAap.log/home/ubuntu/log/error/error.log

我的000-default.conf内容

<VirtualHost *:8000>
        ServerAdmin [email protected]
        ServerName my_ip
        ServerAlias my_ip
        DocumentRoot /home/ubuntu/saas-DocumentProcessing/
        WSGIScriptAlias / /home/ubuntu/saas-DocumentProcessing/src/wsgi.py
        Alias /static/ /home/ubuntu/saas-DocumentProcessing/static/
        ErrorLog /home/ubuntu/log/error.log
        CustomLog /home/ubuntu/log/custom.log combined
        <Location "/static/">
                Options -Indexes
                        AllowOverride All
                        Require all granted
        </Location>
        <Location "/">
                AllowOverride All
                Require all granted
        </Location>
        <Directory /home/ubuntu/saas-DocumentProcessing/static>
                Order allow,deny
                 Allow from all
        </Directory>
         <Directory /home/ubuntu/log>
                Order allow,deny
                 Allow from all
        </Directory>
        WSGIDaemonProcess saas-DocumentProcessing python-path=/home/ubuntu/
saas-DocumentProcessing python-home=/home/ubuntu/saas-DocumentProcessing/ve
nv
        WSGIProcessGroup saas-DocumentProcessing

</VirtualHost>

答案1

步骤 1:找出 Apache 以哪个用户身份运行:

ps aux | egrep '(apache|httpd)'

然后检查您要写入日志的目录的文件所有权和权限。要么更改此目录(及其子目录)的所有者以匹配 Apache,要么更改文件权限以允许写入此目录。

最好的解决办法是改变所有者:

sudo chown -R <user_from_above> /home/ubuntu/log

一种不安全的方法是更改​​权限:

sudo chmod 777 /home/ubuntu/log
sudo chmod 777 /home/ubuntu/log/SaasAap

相关内容