我使用存储库在 Digital Ocean droplet(Ubuntu 14.04)上将 PHP 从 5.5 更新到 5.6 ppa:ondrej/php
。我还更新了 mod_php 以使用 5.6。从那时起,我的虚拟主机就停止工作了。访问服务器时,我所看到的只是“Apache2 Ubuntu 默认页面” - /var/www/html/index.html
。
这是apache2.conf
:
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
目录/etc/apache2/sites-enabled/
:
total 8
drwxr-xr-x 2 root root 4096 Nov 1 08:31 ./
drwxr-xr-x 8 root root 4096 Nov 1 08:20 ../
lrwxrwxrwx 1 root root 35 Nov 1 08:20 000-default.conf -> ../sites-available/000-default.conf
lrwxrwxrwx 1 root root 33 Nov 1 08:31 somesite.com.conf -> ../sites-available/somesite.com.conf
配置文件/etc/apache2/sites-enabled/somesite.com.conf
:
<VirtualHost *:80>
ServerName somesite.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/somesite/public
<Directory /var/www/somesite/public/>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我用“somesite”替换了真实的站点名称。这个配置以前是有效的,我不明白为什么现在它不能用了……我还在其他 3 台服务器上更新了 PHP,它在其他地方都能正常工作。恐怕我已经用尽了我所有的服务器管理知识,真的不知道下一步该怎么做。
您能告诉我如何调试此类问题吗?谢谢!
编辑
这是输出apache2ctl -S
:
VirtualHost configuration:
*:80 is a NameVirtualHost
default server somesite.com (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost somesite.com (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost somesite.com (/etc/apache2/sites-enabled/somesite.com.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33 not_used
Group: name="www-data" id=33 not_used
也许是port 80 namevhost somesite.com
条目中的重复导致了这个问题?如何在不删除默认配置的情况下删除指向默认配置的第一个出现?我想保留它以确保安全和后备。
一些相关主题可能如下:
答案1
apache2ctl -S
是您的最佳选择。它应该会告诉您系统上正在运行的网站。服务器使用的路径可能与您预期的路径不同。