Debian 虚拟机上没有 Web 服务器

Debian 虚拟机上没有 Web 服务器

我已经设置了一个虚拟 Debian 机器,在我的 Windows 机器上运行(使用 VirtualBox)用于开发 LAMP 堆栈。今天,当我尝试从我的 Windows 机器加载开发网站时,浏览器没有从我的 VM 获得响应。我不太擅长 Linux 管理员;以下是我可以告诉你的:

  1. 浏览器从未收到响应,但也没有收到任何 500 错误。它只是在原地打转。
  2. 昨天我在虚拟机上做了一些工作,构建了 php imagick.so 可执行文件,以便我可以使用一些 pdf 编辑库。更改(最终)基本上是这些:

    • $ apt-get 更新 php5-devel
    • $ apt-get 更新 make
    • $ apt-get 安装 php-pear
    • $ apt-get 安装 libmagickwand-dev
    • $ pecl 安装 imagick
  3. 在进行这些更改之前,我制作了工作虚拟机的快照。当我遇到此问题时,我关闭了修改后的虚拟机并启动了之前的快照。这没什么区别 - 同样的 Web 服务器问题。

  4. 从我的 Windows 机器上,我可以在预期的 IP (192.168.1.222) 上 ping 我的虚拟机
  5. 但是,我不能ping 端口 80。我收到“无法找到主机 192.168.1.222:80”的响应。
  6. 以前,我可以重新启动 apache 而没有任何明显的问题,但是刚才当我执行 /etc/init.d/apache2 stop 然后启动时,我第一次得到了这个:

编辑:以 root 身份重新启动 apache 后更新问题

停止/启动服务器:

root@debian:/home/brd# /etc/init.d/apache2 stop
Stopping web server: apache2 ... waiting .
root@debian:/home/brd# /etc/init.d/apache2 start
Starting web server: apache2.

Apache 似乎毫无怨言地重启了

root@debian:/home/brd# tail /var/log/apache2/error.log
Failed loading /usr/lib/php5# ls 20090626+lfs/xdebug.so:  /usr/lib/php5# ls 20090626+lfs/xdebug.so: cannot open shared object file: No such file or directory
Failed loading /usr/lib/php5# ls 20090626+lfs/xdebug.so:  /usr/lib/php5# ls 20090626+lfs/xdebug.so: cannot open shared object file: No such file or directory
[Thu Mar 14 09:27:16 2013] [notice] caught SIGTERM, shutting down
Failed loading /usr/lib/php5# ls 20090626+lfs/xdebug.so:  /usr/lib/php5# ls 20090626+lfs/xdebug.so: cannot open shared object file: No such file or directory
[Thu Mar 14 09:27:22 2013] [error] python_init: Python version mismatch, expected '2.6.5+', found '2.6.6'.
[Thu Mar 14 09:27:22 2013] [error] python_init: Python executable found '/usr/bin/python'.
[Thu Mar 14 09:27:22 2013] [error] python_init: Python path being used '/usr/lib/python2.6/:/usr/lib/python2.6/plat-linux2:/usr/lib/python2.6/lib-tk:/usr/lib/python2.6/lib-old:/usr/lib/python2.6/lib-dynload'.
[Thu Mar 14 09:27:22 2013] [notice] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Thu Mar 14 09:27:22 2013] [notice] mod_python: using mutex_directory /tmp
[Thu Mar 14 09:27:22 2013] [notice] Apache/2.2.16 (Debian) PHP/5.3.3-7+squeeze15 with Suhosin-Patch mod_python/3.3.1 Python/2.6.6 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations

xdebug 似乎存在错误:

root@debian:/home/brd# ls /usr/lib/php5/20090626+lfs/ -al
total 1836
drwxr-xr-x 2 root root   4096 Mar 13 15:29 .
drwxr-xr-x 5 root root   4096 Mar 12 17:07 ..
-rw-r--r-- 1 root root 866513 Mar 13 15:29 imagick.so
-rw-r--r-- 1 root root 109220 Mar  4 09:23 mysqli.so
-rw-r--r-- 1 root root  42352 Mar  4 09:23 mysql.so
-rw-r--r-- 1 root root  26116 Mar  4 09:23 pdo_mysql.so
-rw-r--r-- 1 root root  87588 Mar  4 09:23 pdo.so
-rw-r--r-- 1 root root 141336 Aug 19  2010 suhosin.so
-rw-r--r-- 1 root root 561230 Jul  8  2010 xdebug.so

Apache 似乎正在运行..

root@debian:/home/brd# ps aux | grep apache
root      2338  0.0  0.6  45448 12696 ?        Ss   10:51   0:00 /usr/sbin/apache2 -k start
www-data  2346  0.0  0.3  45448  6536 ?        S    10:51   0:00 /usr/sbin/apache2 -k start
www-data  2347  0.0  0.3  45448  6536 ?        S    10:51   0:00 /usr/sbin/apache2 -k start
www-data  2348  0.0  0.3  45448  6536 ?        S    10:51   0:00 /usr/sbin/apache2 -k start
www-data  2349  0.0  0.3  45448  6540 ?        S    10:51   0:00 /usr/sbin/apache2 -k start
www-data  2350  0.0  0.3  45448  6536 ?        S    10:51   0:00 /usr/sbin/apache2 -k start
root      2358  0.0  0.0   3304   764 pts/0    S+   10:52   0:00 grep apache

httpd 正在监听 80 端口吗?

root@debian:/home/brd# ss -nal | grep 80
0      128                           :::80                           :::*

检查防火墙

root@debian:/home/brd# iptables -n -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

/etc/apache2/ports.conf 中的“监听”指令 (/etc/apache2/apache2.conf 中没有 Listen 指令)

NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

但是..

我仍然无法从我的 Windows 机器 ping 端口 80。从这里,我不知道该去哪里。有什么建议吗?

答案1

启动 apache2 时看一下这一行:

权限被拒绝:make_sock:无法绑定到

您需要具有 root 权限才能启动守护进程,该守护进程绑定到小于 1024 的端口号。

尝试sudo /etc/init.d/apache2 start

答案2

您没有停止/启动 Apache,因为您是以普通用户身份登录的,或者有另一个 Web 服务器在端口 80 上运行。

相关内容