专栏首页FreeBuf用Raspberry Pi Zero打造「即插即用」的Web服务器

用Raspberry Pi Zero打造「即插即用」的Web服务器

*本文原创作者:yfgeek,未经许可禁止转载

虽然Raspberry Pi Zero只有4.5英镑,非常便宜,但确实具有局限性,由于缺少网口、WiFi,功能比较单一,可曾设想,用Raspberry Pi Zero打造一个完美的“即插即用”的Web服务器?

何为即插即用?

类似于优盘一样,插上电脑,等待几秒,直接识别为网卡,直接输入树莓派的网址,连接就是自己的网站。

那么,问题来了,有什么用?

实现本地web本地化,随着前端、后端技术的发展,web应用越来越多,但是web应用受制于网络的限制,一旦没有网络,就没有用武之地。

那么为什么不把web本地化呢?以后拿着“即插即用”的服务器,到任何电脑上,都能随时办公。

安装

我们可以把树莓派虚拟为网卡,然后在内网连接它。

1.下载完整版 Raspbian Jessie 或 Raspbian Jessie Lite 系统,并且刷到你的SD Card里,Windows用Win32 Disk Imager, Mac/Linux 用命令,如下:

diskutil list diskutil unmountDisk /dev/SD卡的标号 #如disk2cd /Users/ivan/Downloads/2016-11-25-raspbian-jessie #进入目录sudo dd bs=1m if=2016-11-25-raspbian-jessie.img of=/dev/rdisk2

2.刷好系统后编辑config.txt文件,在最后一行下,另起一行添加:

dtoverlay=dwc2

保存文件

3.最后,打开cmdline.txt文件。找到单词rootwait,在其之后添加:

modules-load=dwc2,g_ether

4.添加一个文件名为ssh到根目录下,内容为空

5.把SD Card放到树莓派Zero,用安卓数据线与电脑连接,USB口接OTG口,等待60-90s,电脑会发现网卡并且自动配置ip地址。

6.Ping 一下raspberrypi.local看是否能通

PING raspberrypi.local (169.254.70.245): 56 data bytes64 bytes from 169.254.70.245: icmp_seq=0 ttl=64 time=0.570 ms64 bytes from 169.254.70.245: icmp_seq=1 ttl=64 time=0.338 ms64 bytes from 169.254.70.245: icmp_seq=2 ttl=64 time=0.316 ms64 bytes from 169.254.70.245: icmp_seq=3 ttl=64 time=0.344 ms

配置

1.ssh连接raspberrypi.local,默认密码为raspberry

pi@raspberrypi.local

2.通过直接运行raspi-config命令

你需要做

容量扩展 更改系统时区 更改系统密码

3.同时你需要通过执行sudo passwd root更改root密码

4.在本机设置代理

首先,设置本机名为Mac,在本机搭建一个squid,为了使树莓派安装web server,以后日常使用不需要。

brew updatebrew install squid

5.然后下载SquidMan,安装。在本机开启端口为8080的HTTP代理服务,并把本机名称更为Mac。

6.进入树莓派的shell,输入:

cd /etc/apt/apt.conf.d sudo vi 50raspi

最后一行加入一句话:

Acquire::http::Proxy "http://Mac.local:8080";

保存

7.继续输入apt-get update查看是否有网络。

8.安装lighthttpd+mysql+php

输入:

sudo apt-get install lighttpd mysql-server php5-cgi php5-mysql

等待安装完毕后,修改php.ini设置

sudo nano /etc/php5/cgi/php.ini

去掉这一条注释的;

;cgi.fix_pathinfo = 1

随后修改lighttpd.conf

sudo nano /etc/lighttpd/lighttpd.conf

server.modules中增加fastcgi

server.modules = ("mod_access","mod_alias","mod_compress",# "mod_redirect","mod_fastcgi",# "mod_rewrite",)

最后添加

fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket")))

重启lighttpd服务

sudo /etc/init.d/lighttpd restart

通过scp协议,上传一个index.php文件

<?phpphpinfo();?>

删除默认的index.htm文件,打开网站http://自己树莓派名字.local查看是否成功。

不错,接下来的事情,就是把自己的源代码传到树莓派上,不过多叙述。

多说一句

从此以后,你只需要带上你的树莓派Zero就可以随时随地的打开自己的私有web服务。但是,树莓派Zero的性能,确实不行,建议跑一跑小型的程序,不要跑太大的程序。

至于应用嘛,其实做什么都可以的。

*本文原创作者:yfgeek,转载请注明来自FreeBuf.COM

本文分享自微信公众号 - FreeBuf(freebuf),作者:yfgeek

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-01-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 网络安全人才出现结构性短缺,实战能力超学历成企业用人首要标准

    近年来,随着全球范围内网络安全事件的日益增加,网民、企业及国家对这一领域的关注程度不断提升,而政企对网络安全人才的需求也出现了爆发式增长,曾有数据公开显示,目前...

    FB客服
  • 美国在安全教育方面是怎么做的,还有什么地方需要改进?

    前言 众所周知,全球目前都面临着一个问题,那就是网络安全人才的短缺。根据(ISC)²网络安全与教育中心的2017年全球信息安全劳动力调查结果显示,预计到2022...

    FB客服
  • 人才短缺、压力过大?网络安全行业一点都不轻松

    近日,赛门铁克发布一项调查称,法国、英国和德国三个国家中近一半(48%)的网络安全行业领导者们认为他们的安全团队在与黑客、网络罪犯们的竞争中处于严重落后状态,马...

    FB客服
  • 正值开学季,高校学生成黑客攻击目标

    安全机构最新研报显示,开学上课后,黑客经常将高校学生作为攻击目标,而大学校园在应对网络安全威胁时,显得力不从心。报告中指出,在保障网络安全方面,...

    安恒信息
  • JavaScript 字符串【整合】

    JavaScript 字符串用于存储和处理文本。因此在编写 JS 代码之时总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 ...

    一墨编程学习
  • JavaScript 字符串实用常操纪要

    JavaScript 字符串用于存储和处理文本。因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作...

    晚晴幽草轩轩主
  • 《调教命令行08》一文搞懂Linux权限体系

    随着年龄的增加,我的经验越来越丰富,而记忆力却越来越差。为了应付繁重的日常事务,我不得不准备了长长的任务清单。每一条事项的背后,都在不断的提醒我:无论生活中充满...

    xjjdog
  • Debian服务器之安装Python3.

            Linux lnnkee 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 G...

    py3study
  • linux安装python3

    首先下载源tar包   可利用linux自带下载工具wget下载,如下所示:  # wget http://www.python.org/ftp/pyth...

    py3study
  • 关于python2&python3并存使用

    ~~cd /usr/bin~~ ~~mv python python.backup~~ ~~ln -s /usr/local/bin/python3.6 /u...

    以谁为师

扫码关注云+社区

领取腾讯云代金券