apache 启动失败,没有错误日志
apache failed to start with no error logs
今天我遇到了一个问题
我的 Apache 未能重新启动我的 Django 应用程序,我不知道为什么。
最糟糕的是,它没有任何错误日志,只是一片空白!
这个问题让我很困惑,需要帮助。
alif@alif-VirtualBox:/var/www/mywebsite/website$ service apache2 restart
* Restarting web server apache2 [fail]
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
ServerAdmin admin@musicplayer.vhost
ServerName www.musicplayer.vhost
ServerAlias musicplayer.vhost
DocumentRoot /var/www/mywebsite
Alias /static /var/www/mywebsite/website/static
<Directory /var/www/mywebsite/website/static>
Require all granted
</Directory>
<Directory /var/www/mywebsite/website/website>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess mywebsite python-path=/var/www/mywebsite:/var/www/mywebsite/env/lib/python2.7/site-packages
WSGIProcessGroup mywebsite
WSGIScriptAlias / /var/www/mywebsite/website/website/wsgi.py
# Available loglevels: trace8, ..., trace1, debug, info,notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
wsgi.py 在我的网站上
import os
from django.core.wsgi import get_wsgi_application
path = '/var/www/mywebsite/website'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
application = get_wsgi_application()
检查以确保没有任何东西在端口 80 上侦听。我不确定 website.settings
包含什么,但有可能是这个 apache 实例正在尝试使用与另一个相同的端口,或者其他什么else 是端口 80 上的 运行。(这是默认端口)。您可以通过 netstat -tulpn | grep :80
检查是否有东西正在使用该端口
您可以更改此服务器的端口以避免冲突,或者停止其他进程。
今天我遇到了一个问题
我的 Apache 未能重新启动我的 Django 应用程序,我不知道为什么。 最糟糕的是,它没有任何错误日志,只是一片空白!
这个问题让我很困惑,需要帮助。
alif@alif-VirtualBox:/var/www/mywebsite/website$ service apache2 restart
* Restarting web server apache2 [fail]
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
ServerAdmin admin@musicplayer.vhost
ServerName www.musicplayer.vhost
ServerAlias musicplayer.vhost
DocumentRoot /var/www/mywebsite
Alias /static /var/www/mywebsite/website/static
<Directory /var/www/mywebsite/website/static>
Require all granted
</Directory>
<Directory /var/www/mywebsite/website/website>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess mywebsite python-path=/var/www/mywebsite:/var/www/mywebsite/env/lib/python2.7/site-packages
WSGIProcessGroup mywebsite
WSGIScriptAlias / /var/www/mywebsite/website/website/wsgi.py
# Available loglevels: trace8, ..., trace1, debug, info,notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
wsgi.py 在我的网站上
import os
from django.core.wsgi import get_wsgi_application
path = '/var/www/mywebsite/website'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "website.settings")
application = get_wsgi_application()
检查以确保没有任何东西在端口 80 上侦听。我不确定 website.settings
包含什么,但有可能是这个 apache 实例正在尝试使用与另一个相同的端口,或者其他什么else 是端口 80 上的 运行。(这是默认端口)。您可以通过 netstat -tulpn | grep :80
您可以更改此服务器的端口以避免冲突,或者停止其他进程。