网络

阿帕奇和世界杯

  昨天远程配置了一台网站服务器,系统是 debian-31r2,这属于目前的稳定版本。我的第一步工作是要搭建好 apache2 平台(apache2是网页服务器程序),具体地说是:apche2 + php4 + gd + mysql + phpmyadmin。安装个软件对于 debian 来说是轻而易举的,就好像去超市货架上取下王致和腐乳与老邮差臭豆腐一样方便。用下面的命令可以完成:

  # apt-get install apache2 php4 php4-gd php4-mysql mysql-server mysql-client libapache2-mod-php4 libapache2-mod-auth-mysql phpmyadmin apache2-mpm-prefork

  在浏览器里面敲入服务器的 ip 地址:61.180.*.* 回车,出现错误页面“Internet Explorer 不能链接到您请求的网页。此页可能暂时不可用”,不禁满脑狐疑和暗自担心,这下会影响观看世界杯了吧。今天可是英格兰 PK 厄瓜多尔啊。说真的还真挺喜欢看贝壳汉姆罗圈腿和鸭子似的奔跑,老着笑了,呵呵。

  首先怀疑是防火墙出了问题,查看防火墙脚本,有如下的字段:

  iptables -A INPUT -i eth0 -p tcp –dport 80 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp –sport 80 -j ACCEPT

  配置是正确的,问题不像出现在这里,用 iptables -L –n 命令查看也无异常。但为了保险起见,还是先把防火墙关掉试试看,结果出来了,错误页面依然如故。也许是意料之中的,欧文上一场被踢残废了,这场是上不了。那个鲁尼我也不看好,整个郎一个胖墩墩的花花公子,不过他很像一个人,像多年前给我家装修的小木匠,倒是真的。

  也许是 apache2 安装出现了问题吧?那就卸载 apache2 吧。用命令 # apt-get remove –purge apache2 来卸载,用 # apt-get install apache2 来安装,也就是从超市货架上取下了一瓶王致和。重起 apache2 ,居然要晕死了,apache2 无法启动,找不到配置文件,而似乎有 2 个 apache2 要工作!难道是老眼昏花,把王致和与老邮差一起取下来了?!后来分析,卸载 apache2 的时候未充分卸载,又装上了一遍。试了很长时间才把老邮差给送回到货架上,命令是:# apt-get remove –purge apache2*

  又重装了一遍 apache2,可是还不行,问题出现在哪里了呢?据说这次世界杯的皮球特别光滑,像少女涂过蜡的脸。如此光滑的球面,打出弧线球特别难。

  脑瓜里灵光一闪,问题是不是出现 80 端口上了?

  80 端口,是网站服务器 web 服务的默认端口,我们在网上浏览贝壳汉姆和芙蓉姐姐的网页信息,都是走的这个端口。

  先用命令 # ps aux 查看有 apache2 服务在运行。然后用 # netstat –lnp 命令观看端口信息,发现 80 端口已经启动,并且没有被其它程序占用。那为什么 80 端口无法连接呢?

  英厄大战已经开始有一段时间了,在场上很长时间看不到小贝壳影子了,罗圈腿的小贝壳跑到哪里去了呢?试着用 windows 下的软件 xscan 扫描一下远程服务器,结果还是扫描不到 80 端口。郁闷阿。

  想起一个 linux 下的端口扫描软件,于是在超市的货架上,又取下来一件物品来,是听“核桃仁”,它的名字叫 nmap,用命令:# apt-get install nmap 去取。然后用命令 # nmap 127.0.0.1 来进行 61.180.*.* 的本机扫描。扫描结果也清晰的显示有 apache2 服务在 80 端口运行。

  那么远程服务器本机能否浏览网页呢?用命令:wget 127.0.0.1/index.html.et 和 wget 61.180.*.*/index.html.et 分别去取 index.html.et 这个文件。哇噻,成功获取!英格兰获得一个任意球,小贝壳站到了球前,厄瓜多尔的球员搭起了人墙……

  近来偶的大脑似乎受到了哪种打击,时常进行着如同脑电波似的意识流。

  天上的云,云边的月,月下的羊,羊旁的狼……

  小贝壳成了国产黑白反特电影里的公安干警。夜深11点59分,他披着双排扣子的军用黄大衣,手里夹着大辽叶卷烟,眉头紧锁,在分析问题,抽丝剥茧式的进行着:

  问题1:小罗纳尔多花 3 毛钱买了一根大麻花,4 毛钱卖给了菲戈,觉得不合适,5 毛钱又把大麻花买回来了,6 毛钱卖给了劳尔。你说说小罗纳尔多挣了多少毛钱?

  问题2:apache2 已启动,端口无其它程序占用,并且本机可以浏览网页文件,那为什么外网不能访问呢?!

  脑瓜子越来越不灵光了,电视里的小贝壳抡起了一脚,光滑有如少女涂蜡的脸似的皮球像精确制导的导弹划着美妙的贝氏弧线飞向大门的右下角……还真没看走眼啊,罗圈腿踢弧线球正对路!

  球应声落网,球被网封住了,出不去了。网被封住了,浏览不了网页了。呵呵,明白!事后证明 61.180.*.* 的 80 端口被网关路由封掉。

  编辑 apache2 的端口文件 # nano /etc/apache2/ports.conf,注释掉 Listen 80,再增加一个临时用的 Listen 8080 口,重启 apache2,在浏览器中键入 61.180.*.*:8080 后回车,成功!

  天上的云,云边的月,月下的羊,羊旁的狼……

  公安干警小贝壳继续沉思,还有问题1没解决呢?

© 本文由黑河街原创,转载必须保持文章的完整性及保留本链接。
原始链接:http://www.heihe.cc/blog/20060627204.html