我的 apache2 服务器出了什么问题?

我的 apache2 服务器出了什么问题?

我编辑了文件 /etc/apache2/sites-enabled/000-default,然后尝试重新启动我的 apache 服务器,但出现以下错误:

Syntax error on line 20 of /etc/apache2/sites-enabled/000-default.save:
unknown order
Action 'configtest' failed.

000-default 文件如下所示:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

答案1

编辑需要简单说明的是,如果配置文件由于更改而阻塞,避免 Apache 服务器受到干扰的一种方法是先让reloadApache 查看它如何解析配置。

sudo service apache2 reload

其优点reload是它会尝试重新加载配置文件中的设置,但不会强制服务器停止或重新启动。如果出现故障,它会发出警报,但您的 Apache 服务器仍在顺利运行。如果一切reload正常,您可以restart根据需要强制 Apache 设置。

现在,针对您的问题,错误指出:

/etc/apache2/sites-enabled/ 第 20 行语法错误000-默认.保存:未知顺序操作‘configtest’失败。

但你指的是:

/etc/apache2/sites-enabled/000-默认

似乎您在编辑文件时出现了问题,因为当发生崩溃或以其他非正常方式退出编辑器时就会显示000-default该文件。.save

此外,应该只有一个000-default,而不是一个000-default.save

我会查看这个文件:

/etc/apache2/sites-available/000-default

看起来对吗?不对,请看这里:

/etc/apache2/sites-available/000-default.save

000-default看起来对吗?那么将的内容替换为000-default.save

一旦解决了sites-available问题,请转到此目录:

/etc/apache2/sites-enabled/

然后清理它。删除所有名为000-default或的文件,并创建一个从 到的000-default.save正确符号链接,如下所示:sites-availablesites-enabled

sudo ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/000-default

sites-available请注意,在文件中命名时,default但当它被链接到文件中时,sites-enabled它会被命名000-default以设置加载顺序。

相关内容