如何搭建自己的本地服務器,Web服務器


搭建本地服務器,Web服務器——保姆級教程!

先上圖!大致思路就是如此。

思維導圖

前言

暑假因為疫情在家無事可做,便白嫖了阿里雲大半年的虛擬主機。雖然它只有1核2G,1M的帶寬,但也給了我一個實踐的機會,讓我有機會了解學習apache、php、js、Linux等等······

顯然!我們已經不再滿足於一百多KB的帶寬,緩慢的cpu速度和狹小的50G系統盤了!自建一個性能強大,帶寬300M(這取決於自己的寬帶),硬盤容量隨意增加的本地服務器勢在必得!終於,功夫不負有心人,我在折騰了一個通宵之后就肝了出來,於此將我的經驗分享出來,希望能幫助到大家。

本地服務器的好處

毋庸置疑,那就是可操控性、可拓展性和極致性價比。相比於各類雲服務廠商(阿里雲、騰訊雲等)動輒一年好幾千的“高端”配置,我這個窮人還是老實折騰我的本地服務器吧(不爭氣的眼淚流了下來,嗚嗚嗚~~)

本地服務器的弊端

當然了,本地服務器畢竟不是專業的服務器。況且國家對於互聯網的管控還是很嚴格的,所以這就導致了本地服務器的一些弊端。例如,

  1. 本地服務器不夠穩定,容易受到停電、機器故障、網絡故障等各類不可控因素的影響;
  2. 我們所部署的本地服務器並不是專業的服務器,本身的並發能力不強,所以不適合用戶數量特別巨大的人;
  3. 電信運營商對於家用寬帶做了諸多限制,封禁了80,22等常用端口。雖然能夠通過端口映射或修改端口來解決,但還是不太美觀。幸運的是,我這里的443端口沒有被封,不要太開心~~

前提准備

公網IP

這是至關重要的一項。打開http://ip.3322.net,查看返回的IP地址與光貓普通用戶后台的IP地址是否相同,如果相同,則當前IP為公網IP。如果不相同,則需要向電信運營商申請公網IP。打給自己的運營商客服,告訴她家里要裝NAS或者監控,申請公網IP。

光貓改為橋接

一般我們安裝的光貓都自帶路由器和撥號功能,但是不具有端口映射功能,無法將本地局域網內的服務器映射到公網上面。所以我們需要讓路由器來進行撥號任務,而光貓單獨進行光電信號轉換。

將光貓改為橋接需要用超級管理員登錄光貓后台,一般為192.168.1.1/admin不同的光貓情況不同,去百度搜搜自己的光貓型號。另外超級管理員密碼要找裝機師傅要,他們一般以各種理由推辭,難搞哦。如果搞不定就去萬能的淘寶吧!(別怪我沒提示哦)我自己也是找的淘寶。。。

一台舊電腦

我是用的是一台老式的Dell靈越筆記本,4G RAM,i5 八代U,500G HDD。這對於個人博客服務器來說是綽綽有余了,足以抵得上阿里雲好幾千的服務器了。

一個域名

為什么需要域名

在這里我說一下為什么我們還需要一個域名呢?直接適用IP地址訪問不就好了?反正是自己使用的。

因為我們向電信運營商申請的公網IP是動態的,也就是說隔一段時間就會改變,不是固定的IP地址。那么能不能申請固定的IP地址呢?答案是可以,但是非常貴,面對大型企業的。我這種窮學生就算了吧。

所以,在有個一個域名之后就可以使用動態域名解析,將域名解析到變化的IP地址上,這樣不論IP地址如何變化,我們總是能夠訪問得到本地的服務器。況且,如果是想做個人博客,只有域名才能夠被百度和谷歌收錄,才有機會被別人看見。

申請域名

注冊域名可以去阿里雲萬網,也可以去騰訊雲,找個合適的域名即可。直接買,即可直接開始使用。

備案

不過我建議,有空的時候去備個案,也不麻煩,時間也不長。況且這樣能為以后免去很多麻煩。

各大雲服務廠商都有提供代備案服務,直接按照流程走即可。都是免費的,不收取任何費用。

中間部署

安裝CentOS 7 操作系統

市面上有很多可供選擇的服務器系統,Linux是毋庸置疑必選的——由於它的穩定性。至於為何選CentOS 7,當然是因為我對它熟悉啊~~ 咳咳,那當然是因為CentOS本身就很適合做web服務器,況且用戶多,問題容易解決。

在這里, 我們需要選擇安裝 基本的網頁服務器,我們不需要圖形界面,這將會更加省電和高效。

02

配置網卡驅動

剛安裝好的 基本網頁服務器可能無法連接外網,在Linux終端上使用ping baidu.com測試一下,如果不通,則需要配置一下相關文件。參考這篇文章https://www.php.cn/centos/445305.html。這里是有線網絡的配置方法,至於無線網卡如何驅動,請自行百度Google。

更換國內yum源

國內速度太慢,目前國內的大公司有許多開源鏡像站,例如阿里雲、網易、清華大學、華為等等,這里使用阿里雲的yum源。

參考官方文檔https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11bXrW8A,依次執行

su
輸入root密碼
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

安裝ssh

sudo yum install oppenssh -y

啟動ssh的服務:

systemctl start sshd.service

設置開機自動啟動ssh服務

systemctl enable sshd.service

配置文件在/etc/ssh/sshd_config,一般不用修改。

安裝ftp

sudo yum install ftp -y

ssh和ftp服務都是22端口的,我們目前在內網進行部署,所以不必更改端口,后面會進行端口映射,已解決運營商封禁22端口的問題。

至此,我們就可以使用shell和ftp軟件進行遠程連接了,推薦xftp和xshell,學生和家庭用戶免費,在這里申請,https://www.netsarang.com/zh/free-for-home-school/。也可使用免費版的FinalShell,私有雲,密碼:chens.life

安裝寶塔面板

寶塔面板可以更簡單明了的進行網站的部署和服務器的監控,非常值得推薦。參考官方網站https://www.bt.cn/bbs/thread-19376-1-1.html

一鍵安裝命令

sudo yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

耐心等待其安裝完成,之后會得到一個訪問地址和賬戶密碼,我們先使用內網訪問地址進行操作。

03

第一次配置

使用內網登錄面板,同意使用條款后進入界面。選擇LNMP方案安裝web環境,極速安裝。注意!php版本選擇7.2版本,以后許多開源好用的軟件必須高版本php的支持,例如nextcloud。

04

耐心等待安裝完成。

修改安全設置

安裝完成之后會提醒你

當前面板使用的是默認端口[8888],有安全隱患,請到面板設置中修改面板端口!

所以我們到 面板設置中修改面板端口安全入口面板用戶面板密碼,按照自己的需求修改。,例如我將端口修改為5656,安全入口修改為blogtest。這樣設置之后就避免了面板被暴力破解的幾率,更加的安全。

06

修改默認建站目錄

如果/目錄容量太小,而其他目錄空間較大,就可以將默認建站目錄修改為自己想要的位置。在面板設置 -> 默認建站目錄修改。本例中只有/目錄,所以不再演示。

配置路由器端口映射

到了這一步就基本完成了服務器環境的搭建,最重要的一步就是如何讓外網能夠訪問自己的服務器,並打開寶塔面板。

首先我們登錄自己的路由器控制台,綁定自己服務器的內網IP地址,這樣防止了端口映射因為服務器內網IP地址變動而出錯。之后,我們需要進入端口映射這一高級功能,填上要映射的外網端口和內網IP和端口,即可使用自己的公網IP加端口訪問到寶塔面板,證明端口映射成功。例如這樣

07

08

寶塔面板的外部和內部端口可以相同,這主要看自己的電信運營商有沒有封禁使用的端口。例如要想訪問80端口的web服務器,我們只能把99(舉個例)映射到內網IP的80端口,這樣就實現了外網訪問。就是有點難看罷了。

不過,如果你所在的電信運營商沒有封禁443端口,就可以使用https加密來不加端口訪問自己的網頁了。這需要在端口映射中添加轉發規則.

09

而你的網址也要申請ssl證書,才能開啟https加密。我們后面會講到,直接使用寶塔的一鍵部署功能。

dns解析

登錄自己的雲服務商的dns解析管理后台,把域名解析到自己當前的公網IP。即可通過域名加端口的方式訪問自己的網站。

后期完善

動態域名解析

關於動態域名解析,雖然有花生殼等服務商,但都是收錢的,況且自定義域名也是收費的。我目前再用GitHub上的一個開源項目https://github.com/NewFuture/DDNS,根據相關說明配置好以后,讓寶塔計划任務每10分鍾執行一次,即可實現動態域名解析。

10

ssl證書部署

在寶塔面板網站設置的ssl中,申請Let's Encrype證書,選擇阿里雲ddns驗證(根據自己的雲服務商)。寶塔ssl證書在自建服務器的條件下不可用。

11

筆記本禁止盒蓋休眠

vim /etc/systemd/logind.conf,將HandleLidSwitch:后面改為ignore,將前面的#去掉。保存退出。然后執行systemctl restart systemd-logind即可生效。

常見錯誤

https無法訪問

只設置了80端口的映射,沒有設置443端口的映射。或者設置了,但是沒有點擊 立即生效

CentOS無法ping通,無法連接外網

參考這篇文章即可解決https://blog.csdn.net/sinat_32079337/article/details/70238107

結尾

這就是我自建web服務器的大致過程了,因為使用了虛擬機模擬的一部分內容,所以可能不是100%的信息一致。但是,道理都是一樣的,我們也要合理的利用百度和Google。希望這會對你有所幫助。

歡迎在下方留言.


免責聲明!

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



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