刚到手的树莓派

前面我用小米路由搭建起了从外网可以访问的网站,并和域名绑定在了一起,但还是不完美。因为我发现无论怎么搞,从外网也无法ssh到路由器上去。猜测可能是小米出于安全的考虑,做了屏蔽。所以即使加了防火墙例外,也还是登不进来。如果我想随时随地的修改服务器文件,就没法做到了。于是买了个树莓派,把http服务架设在树莓派上,通过在小米路由上设置端口转发,这样外网的http和ssh请求就被转发到树莓派了。小米路由的usb足以给低功耗的树莓派供电,无需占用多余的电源插座。

先来秀一下我的树莓派,全部自己动手组装,还算是挺简单的。开着风扇太吵,所以我把风扇的线给拔了。回头写个脚本定时控制开启,可以在不扰民的时段自动开启。

第一步、在树莓派上搭建lamp,先运行 sudo apt-get update 更新软件源,然后运行如下命令:

sudo apt-get install apache2         # 安装Apache
sudo apt-get install mysql-server    # 安装Mysql
sudo apt-get install php5            # 安装PHP
sudo apt-get install php5-mysql

访问树莓派IP,可以看到如下页面,表示http服务搭建完成:

http服务搭建成功

第二步、在小米路由上做一个端口转发,使得外网访问被转发到树莓派上去。打开小米路由的后台设置 - 高级设置 - 端口转发 - 添加规则:

外部端口:80
内部IP地址:树莓派的IP
内部端口:80

点击“保存并生效”,再从外网访问www.binglen.com,我发现居然能够返回上面的页面。由此可见,前面在玩路由的时候得出的结论说运营商屏蔽了80端口是不科学的,问题应该还是处在小米路由上。因为路由器对内的80端口已经被用来做路由后台服务了,所以在小米路由上假设的llmp无法再使用80端口。

第三步、在小米路由上再添加一条端口转发规则,转发到树莓派的22端口,使得外网可以ssh登录。方法同上。

第四步、需要确定树莓派的conf文件以及DocumentRoot的位置。打开/etc/apache2/apache2.conf文件,在里面找不到DocumentRoot的配置,执行如下命令:

find /etc/apache2 -type f|xargs grep "DocumentRoot"

查找/etc/apache2下包含"DocumentRoot"字符的文件,得到如下结果:

/etc/apache2/sites-available/default:    DocumentRoot /var/www
/etc/apache2/sites-available/default-ssl:    DocumentRoot /var/www

说明在这两个文件中定义了DocumentRoot 的位置在/var/www,在该文件夹下放index.php文件编辑如下:

<?php

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-Type: text/plain");

echo ""
."Hello World!\r\n";
?>

通过http://树莓派地址/index.php,得到如下内容:

 第五步、把Apach的默认页面指向该index.php。现在默认指向的是index.html,按照同样的方法查找关键字:

find /etc/apache2 -type f|xargs grep "index"

得到如下内容:

/etc/apache2/mods-available/dir.conf:          DirectoryIndex index.html index.cgi index.plindex.php index.xhtml index.htm /etc/apache2/mods-available/autoindex.load:LoadModule autoindex_module /usr/lib/apache2/modules/mod_autoindex.so /etc/apache2/mods-available/autoindex.conf:<IfModule mod_autoindex.c> /etc/apache2/mods-available/autoindex.conf:# server-generated indexes. These are only displayed for FancyIndexed /etc/apache2/mods-available/autoindex.conf:# directory indexes. /etc/apache2/mods-available/autoindex.conf:# IndexIgnore is a set of filenames which directory indexing should ignore

看起来像是在/etc/apache2/mods-available/dir.conf,修改该行为:

DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

然后重启http服务:

sudo service apache2 restart

搞定!

计算机网络期末复习题 201708-201801计算机网络复习指导发布-校考学生!!下载截止于12.5日晚上9点 2017-12-04 23:07 计算机网络复习指导-校内考试 §1.名词解释: 1. 计算机网络 2.网络体系结构 3.高速以太网 4.静态路由选择 5. 动态路由选择 6.子网掩码 8.动态主机配置协议 9.套接字 10.客户/服务器模型(C/S模型) 11.域名系统(DNS) 12.光纤分布式数据接口FDDI §2.简答题: 1.试谈你对网络安全的威胁和防病毒技术的认识。(线下教学课件) 2.简述物理层的四个特性。(线下教学课件) 3.计算机网络的组成(P2-P3) 4.计算机网络的功能(P3) 5.计算机网络标准化的相关组织(P4+线下教学课件) 6.计算机网络的性能指标(P8+线下教学课件) 7.简述你所知道的网络传输介质(P33-34) 8.物理层的四个特性(P34) 9.简述四种帧边界的划分方法(即组帧方法)。(P52-54+线下教学课件) 10.简述停止-等待流量控制(协议)。(P59+P62-P64+线下教学课件) 11.简述时分多路复用(P69+线下教学课件) 12.简述频分多路复用(P68+线下教学课件) 13.简述IPv4地址的分类(P122-123) 14.UDP数据报与IP分组的区别(P187) §3.论述题: 1.试说明数据链路层原语和协议的转换。(线下教学课件) 2.描述常规释放的过程,并画出其示意图。(线下教学课件) 3.奈奎斯特定理公式和香农定理公式的主要区别是什么? 4.试比较电路交换、报文交换和分组交换等三种数据传输方式。(P27-29) 5.谈谈你对差错控制方法的理解。(P54-58+线下教学课件) 6.谈谈域名解析过程(P225-226) 7.ARP和DNS是否有些相似?它们有何区别?(P227) 8.FTP的工作原理。(P228)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值