用樹莓派從0開始打造屬於自己的服務器


1.網絡設置

2.硬件購買

3.寫入系統

4.開始搭建nginx服務器

 

1.網絡設置

  1.1. 申請公網ip

    不多講,向運營商進行申請(可以向寬帶維修人員求助 小人曾經申請是免費的,現在不知道了)

    如何判斷是否是公網ip

    在baidu中輸入ip進行搜索,然后去ping一下自己的ip,如果能夠ping通,一般就是公網ip,否則就是私網ip

    

    

    可見,能夠ping通,證明我的就是公網ip,但是美中不足的就是,這個ip是隨機分配的,當重啟光貓后,則又會重新獲取了,這就需要一種新的機制了,那就是花生殼

    

   1.2 使用花生殼進行域名綁定

    參照網址:http://service.fastcom.com.cn/article-479.html

    我的也進行了綁定,這樣的話,只要記住域名,那么它就會自動去獲取ip地址了

    

    進行綁定了之后,可以試試通過ping 域名的方式來檢查綁定成功了沒有,我的成功了

    路由器的部分,先到這里,下面來看看樹莓派的部分

 

2.硬件購買

  

 

購買價格如下

名稱

型號規格

價格

主機

 樹莓派3B Raspberry Pi Model 3 B 板載wifi藍牙 E14主板

¥190.00

讀卡器

隨機

¥9.90

機殼

隨機

¥12.00

散熱片

樹梅派2/3代專用

¥3.50

HTMLVGA

隨機

¥15.50

電源線

 5V 2.5A Micro USB 電源帶開關線 raspberry pi 3

¥17.90

總計

¥248.80

  加上郵費的話,一共話費進行250左右,內存卡是我自己原有的

  淘寶很多,這里就不介紹了

 

3.寫入系統

  

  3.1.必備工具

    這里我們下載的是CentOS-arm.img這個系統,並且使用win32diskimager來寫入內存卡

    必備工具:

    讀卡器

    內存卡(至少4G 推薦使用8G 在下使用的是16G

    一台windows的電腦

  3.2 下載系統

    廢話不多說,這里提供幾個網址給大家

    教程:http://shumeipai.nxez.com/download

    CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img下載連接:http://mirror.centos.org/altarch/7/isos/armhfp/CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz

    win32diskimager下載連接:https://nchc.dl.sourceforge.net/project/win32diskimager/Archive/win32diskimager-1.0.0-install.exe

  3.3 寫入系統

    安裝win32diskimager,一路Next(不過記得得勾選Create a desktop shortcut 在桌面創建快捷方式,不然以后可能很找)

    解壓系統文件

    開始寫入

 

    

 

    

    

 

    

     寫入ok 開始連接各個硬件(其實就只有電源線和網線需要連接以及插入內存卡)

4.開始搭建nginx服務器

  4.1 獲取樹莓派ip地址

  可以看到centos-rpi3這個的Ip地址,也就是樹莓派的地址

    

  4.2 設置路由轉發

  

  同時,也要開啟DMZ設置

  

  4.3 安裝nginx程序

  開始連接樹莓派

  命令:ssh username@host -p port

  連接成功后,屬於一下命令來獲取nginx

#獲取nginx程序
[root@centos-rpi3 ~]# wget http://nginx.org/download/nginx-1.2.9.tar.gz
#解壓nginx程序
[root@centos-rpi3 ~]# tar xf nginx-1.2.9.tar.gz
#利用yum 安裝pcre pcre-devel openssl openssl-devel gcc包
[root@centos-rpi3 ~]# yum install pcre pcre-devel openssl openssl-devel gcc -y
#開始安裝
[root@centos-rpi3 ~]# cd nginx-1.2.9
[root@centos-rpi3 nginx-1.2.9]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx-1.2.9 --with-http_ssl_module --with-http_stub_status_module
[root@centos-rpi3 nginx-1.2.9]# make
[root@centos-rpi3 nginx-1.2.9]# make install

  4.4 配置

設置配置如下:
配置路徑

 [root@centos-rpi3 conf]# pwd
 /usr/local/nginx-1.2.9/conf
 [root@centos-rpi3 conf]#

[root@centos-rpi3 conf]# sed -n 30,40p nginx.conf
    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       1234;
#hai-yan.ticp.net是我的域名 server_name hai
-yan.ticp.net; #charset koi8-r; [root@centos-rpi3 conf]#

  4.5 實驗

檢查語法
[root@centos-rpi3 conf]# /usr/local/nginx-1.2.9/sbin/nginx -t nginx: the configuration file /usr/local/nginx-1.2.9/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx-1.2.9/conf/nginx.conf test is successful
啟動nginx [root@centos
-rpi3 conf]# /usr/local/nginx-1.2.9/sbin/nginx [root@centos-rpi3 conf]#
查看nginx是否啟動
[root@centos-rpi3 conf]# ps aux | grep nginx root 5792 0.0 0.2 7820 1912 ? Ss 05:07 0:00 nginx: master process /usr/local/nginx-1.2.9/sbin/nginx nginx 5793 0.0 0.2 7976 2464 ? S 05:07 0:00 nginx: worker process root 5795 0.0 0.2 6400 2264 pts/0 S+ 05:08 0:00 grep --color=auto nginx [root@centos-rpi3 conf]#
關閉防火牆
[root@centos-rpi3 conf]# systemctl stop firewalld.service [root@centos-rpi3 conf]#
本機測試
[root@centos-rpi3 conf]# curl -I hai-yan.ticp.net:1234 HTTP/1.1 200 OK Server: HaiYan/1.2.9 Date: Wed, 29 Mar 2017 05:11:55 GMT Content-Type: text/html Content-Length: 560 Last-Modified: Wed, 29 Mar 2017 02:22:34 GMT Connection: keep-alive Accept-Ranges: bytes [root@centos-rpi3 conf]#
yan@yan:~$ curl -I hai-yan.ticp.net:1234
HTTP/1.1 200 OK
Server: HaiYan/1.2.9
Date: Wed, 29 Mar 2017 05:12:28 GMT
Content-Type: text/html
Content-Length: 560
Last-Modified: Wed, 29 Mar 2017 02:22:34 GMT
Connection: keep-alive
Accept-Ranges: bytes

yan@yan:~$ 

接下來只需要修改html文件,寫入自己想要寫入的內容即可

 

5.總結

我就只總結我在實驗工程中出現的問題:

  1.域名轉發不成功

  解決:求助運營商將自動獲取ip修改為PPPOE撥號,然后在路由進行設置轉發即可

  

  2.本機電腦ping不通wan口ip(就是百度Ip的那個結果)

  解決:向運營商證實自家網絡是公網ip,用路由檢測工具檢測根DNS是否正常,如果不正常,則換一個路由即可(我就是換了一個路由)

  

  3.在本地能夠正確瀏覽網頁(curl -I ipaddress),但是用其他機器訪問網址時出現無法找到

  解決:關閉防火牆和selinux,或者開放需要的端口

 

總結:

  最主要的就是設置路由轉發,如果在外網能夠連接到服務器,那么一切都好說,其他的只是時間問題,總結一下最基本搭建服務器的步驟:

  1.購買硬件

  2.設置網絡為公網ip

  3.設置路由轉發 ---> 轉發至局域網服務器上

  4.檢測,ping即可

  5.安裝軟件

  6.布置網頁

 

 

    

 

 

    

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM