我目前正在尝试将我的 django 项目部署到由 RHEL-8 VM 托管的 Web 服务器。我尝试设置 VM 以使用 HTTPD(apache)。但是,我似乎无法正确获取虚拟主机配置文件。因此,我已授予 apache 对 /var/www 及其内容(错误日志、自定义日志)的所有必要权限和所有权。我还在 /etc/httpd/conf.d/django.conf 中创建了一个虚拟主机 conf 文件,其中包含以下代码。
< 虚拟主机 *:80 >
ServerAdmin root@localhost
ServerName InternationalStudentHelp.com
DocumentRoot /var/www/
Alias /static /var/www/django_project/src/static_root
<Directory "/var/www/django_project/src/static_root">
Options FollowSymLinks
Order allow,deny
Allow from all
Require all granted
</Directory>
ErrorLog /etc/httpd/logs/error_log
CustomLog /etc/httpd/logs/access_log combined
WSGIPassAuthorization On
WSGIDaemonProcess django_proj python-path=/var/www/django_project/src python-home=/var/www/django_project/venv
WSGIProcessGroup django_proj
WSGIScriptAlias / /var/www/django_project/src/mysite/wsgi.py
<Directory /var/www/django_project/src/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</虚拟主机>
'''
但是我不确定如何让 HTTPD (apache) 正确接受此配置,因为我只收到下面所述的错误。如能得到任何帮助我将不胜感激。
编辑: ls -al /var/www
- drwxr-xr-x.5 apache apache 53 4 月 30 日 19:02。
- drwxr-xr-x.21 root root 4096 4月 28 17:31 ..
- drwxr-xr-x. 6 apache apache 88 4月 30 17:34 django_project
- drwxr-xr-x. 2 apache apache 6 十二月 3 01:19 cgi-bin
- drwxr-xr-x. 2 apache apache 51 4月 30 19:07 html
编辑:ErrorLog 和 CustomLog 错误被注释掉
mod_wsgi (pid=36037): 无法执行 Python 脚本文件‘/var/www/django_project/src/mysite/wsgi.py’。
mod_wsgi (pid=36037): 处理 WSGI 脚本‘/var/www/django_project/src/mysite/wsgi.py’时发生异常。
ModuleNotFoundError:没有名为“mysite”的模块
这些错误重复多次
编辑: ls -al /var/www/django_project/src/mysite/
- drwxr-xr-x.3 apache apache 89 4 月 30 日 17:33。
- drwxr-xr-x.8 apache apache 182 4月 30 17:33 ..
- -rw-r--r--. 1 apache apache 405 4月30日 17:33 asgi.py
- drwxr-xr-x. 2 apache apache 4096 4月30日 17:33pycache
- -rw-r--r--. 1 apache apache 3694 4月 30 17:33 settings.py
- -rw-r--r--. 1 apache apache 1853 4月 30 17:33 urls.py
- -rw-r--r--. 1 apache apache 405 4月 30 17:33 wsgi.py
编辑:上面的配置文件产生的错误:
AH00492:捕获 SIGWINCH,正常关闭
忽略异常:<_UnixSelectorEventLoop running=False closed=False debug=False>> 的 del 回溯(最近一次调用最后一次):文件“/usr/lib64/python3.6/asyncio/base_events.py”,第 526 行,德尔 NameError:名称“ResourceWarning”未定义
SELinux 策略已启用;httpd 作为上下文 system_u:system_r:httpd_t:s0 运行
AH01232:已启用 suEXEC 机制(包装器:/usr/sbin/suexec)
AH02282:mod_heartmonitor 没有 slotmem
AH02951:mod_ssl 似乎未启用
Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.6.4 Python/3.6 已配置--恢复正常操作
AH00094:命令行:'/usr/sbin/httpd -D FOREGROUND'
编辑: ls -al /var/www/django_projects
drwxr-xr-x.6 apache apache 88 4 月 30 日 17:34。
drwxr-xr-x.5 apache apache 53 4月30日 19:02 ..
drwxr-xr-x. 7 apache apache 169 4月 30 17:33 .git
drw-rw-rw-. 2 apache apache 29 五月 1 00:29 日志
-rw-r--r--. 1 apache apache 404 4月 30 17:33 pyvenv.cfg
-rw-r--r--. 1 apache apache 26 四月 30 17:33 README.md
drwxr-xr-x. 8 apache apache 182 4月 30 17:33 src
drwxr-xr-x. 5 apache apache 100 4月 30 17:33 venv