全志H3 NanoPi-Duo2搭建nginx服务器
开头
最近有做有关视频流服务器的项目,偶然间接触到了nginx,发现他的功能也很强大,所以在这里记一下搭建流程,怕以后还要用时忘记了!
使用的开发板全志H3 NanoPi-Duo2
我这次是用的全志H3 NanoPi-Duo2开发板做的验证。在开发板上跑的是Ubuntu 16.04.2
这里是这个板子的信息:http://wiki.friendlyarm.com/wiki/index.php/NanoPi_Duo2
因为搭建的是服务器,所以需要需要让开发版接上网络,还好开发板有自带的wifi模块。连接wifi方式如下:
//开启wifi
$ nmcli r wifi on
//扫描附近的 WiFi 热点
$ nmcli dev wifi
//连接到指定的 WiFi 热点
$ nmcli dev wifi connect "SSID" password "PASSWORD" ifname wlan0
当WiFi连接成功的时候,下次开发板上电系统跑起来后会自动去连接之前连上的WiFi。
下载nginx、OpenSSL
我使用的nginx版本是nginx-1.15.3
下载地址:http://nginx.org/en/download.html
下载好的是一个压缩包,我用Xshell和ubuntu上的sz rz功能将压缩包扔到了开发板里面。
//解压
tar -zxvf nginx-1.15.3.tar.gz
我的OpenSSL版本是OpenSSL 1.1.1c
下载地址:https://www.openssl.org/source/
解压方式和上面一样!
//解压
tar -zxvf openssl-1.1.1c.tar.gz
好了,下面开始编译
编译OpenSSL:
到刚刚解压好的OpenSSL目录下依次执行下方的命令进行编译:
./config
./config -t
make depend
make
make test
make install
安装好了后输入openssl,然后输入version即可看到刚刚安装openssl的版本信息。
编译nginx:
到刚刚解压好的nginx目录下依次执行下方的命令进行编译:
sudo ./configure
sudo make
sudo make install
PS:由于H3的板子芯片性能有点低,所以我在make的时候等了好久好久好久好久,然后再make install的时候等待的时间比make还要久,我哭了!!!在电脑上的虚拟机编译的话几分钟就好了!谁叫它只是一块小小的开发板呢!所以,这个板子编译的过程中你可以去看一部电影,没准看完了回来看它还在变编。
还有,如果中间有错误的话,就又要重新来。还好我一次就make过了!
马上就好了!!
当nginx编译成功之后,然后刚刚解压nginx-1.15.3的目录下会出现一些新的文件,进入到下面的bin/conf目录,里面有一个nginx.conf,修改里面的内容。
cd /bin/conf
vi nginx.conf
把nginx.conf里面的内容全部删除,替换成以下内容:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
这里面,我把端口号设置为了80,也可以自己定,一定要注意不要和其它程序使用的端口相同就行了!
启动nginx服务
要在nginx-1.15.3目录下进行启动(注意,一定要!!)
然后执行以下命令:
//开启nginx服务
./bin/sbin/nginx
//关闭nginx服务
./bin/sbin/nginx -s stop
//重启nginx服务(这个是当nginx启动后,修改了nginx.conf文件后才用到的)
./bin/sbin/nginx -s reload
查看H3板子的IP地址
ifconfig
然后在浏览器地址栏输入板子的IP地址,再加上刚刚设置好的端口号,点击回车!
当你看到以下画面的时候,那么恭喜你,你成功的搭建了一个nginx服务器!!!因为板子是连接的wifi,所以在这个局域网下所有设备进入这个地址都可以看到服务器里面的网页内容。
还有一件事
是不是感觉上面的网页内容是不是有点无聊!如果你想修改网页内容的话就进入刚刚nginx-1.15.3目录下的bin/html,里面有一个index.html文件,这个就是刚刚显示的网页文件,你想显示其他网页内容的话,只需要修改index.html的内容就可以了。
由于之前在学校里上网页编程课的时候摸鱼去了,所以我想自己写网页的想法只好往后稍一稍了QAQ!!
我只好在github上面去copy了几个大佬写的网页,放到这个服务器上面。这也是无奈之举啊。
这个是一个显示时间的网页,背景颜色的RGB会随着时间的改变而改变!
这个,你进去就可以直接玩超级玛丽了!随时,想玩就玩!
就这么多了
以上的功能可惜只能在局域网下进行访问,如果你想把你的网页可以通过外网访问的话,你可以去做一个网页穿透!那么真的是随时随地,想看就看!
nginx的功能还不止这些,还有其他功能我好没有去尝试!只要你的脑洞够大,你可以用这个做很多事情!比如用网页去控制你家的电器什么的。物联网什么的,就是这么轻松的实现了!
第一次写博客,有什么问题还多多见谅!