面向初級(jí)PHPer的工作經(jīng)驗(yàn)
前言
此筆記面向初級(jí)PHP工程師,適合自學(xué)、培訓(xùn)班出來(lái)的PHPer。
初級(jí)PHP工程師大部分進(jìn)入的都是技術(shù)體系不完善的小公司,也算是小公司的php程序員全方位攻略吧。
此筆記涉及一個(gè)網(wǎng)站從無(wú)到上線(xiàn)全部環(huán)節(jié),如果其中有任何一個(gè)環(huán)節(jié)你不熟練,那么請(qǐng)仔細(xì)閱讀。
其中用到的部分技術(shù)可能引起部分phper不適,請(qǐng)見(jiàn)諒,我只想讓初級(jí)phper能夠更快、更容易得去完成網(wǎng)站從無(wú)到有,至于后期發(fā)展,得靠不斷的學(xué)習(xí)!
網(wǎng)站從無(wú)到上線(xiàn),都需要哪些環(huán)節(jié)?
一般來(lái)說(shuō),網(wǎng)站從無(wú)到上線(xiàn),只需要以下3個(gè)必需品
- 域名
- 主機(jī)
- 程序
而這3個(gè)必需品,每個(gè)都包含繁瑣的步驟,非常容易把新人繞暈,現(xiàn)在我來(lái)把他們整理一下,縷清他們?nèi)c(diǎn)之間的關(guān)系。
- 域名
建立一個(gè)網(wǎng)站,首先要有一個(gè)容易讓人記住的域名。
??域名需要去空間商(IDC)購(gòu)買(mǎi),例如萬(wàn)網(wǎng)(現(xiàn)為阿里云域名)、西部數(shù)碼(老牌IDC)、騰訊云等等...
挑選一個(gè)你喜歡的空間商,去里面購(gòu)買(mǎi)一個(gè)域名,步驟我就不說(shuō)了。
購(gòu)買(mǎi)域名需要有2個(gè)注意的地方:
??1、讓你填寫(xiě)實(shí)名認(rèn)證模板,這個(gè)是工信部的要求,不管是公司買(mǎi)還是個(gè)人買(mǎi)都是提供他需要的資料就可以了;
??2、有的域名后綴無(wú)法在國(guó)內(nèi)實(shí)名認(rèn)證也就是無(wú)法備案,所以買(mǎi)小眾后綴的域名先查一下是否能實(shí)名認(rèn)證,如果你的主機(jī)是國(guó)外主機(jī)就不存在這個(gè)問(wèn)題。
域名備案
??域名這里最麻煩的就是這里了,各省管局(工信部)要求不同,各空間商(IDC)規(guī)則也不同,但是萬(wàn)變不離其宗,就是他要什么資料,就給什么資料!
必需資料:
主體(或主辦單位)信息:
主體全稱(chēng)(公司名)、
主辦單位性質(zhì)(自行選擇)、
證件類(lèi)型(一般都是營(yíng)業(yè)執(zhí)照)、
證件號(hào)碼(營(yíng)業(yè)執(zhí)照上的統(tǒng)一社會(huì)信用代碼)、
證件地址(營(yíng)業(yè)執(zhí)照上的住所)、
通訊地址(一般都是住所,如果不通過(guò)看原因)、
網(wǎng)站名稱(chēng)(一般填寫(xiě)公司名稱(chēng)必過(guò),這里的網(wǎng)站名稱(chēng)跟后續(xù)的網(wǎng)站Title沒(méi)什么關(guān)系)
備案域名(填寫(xiě)你要備案的域名)
前置或?qū)m?xiàng)審批內(nèi)容類(lèi)型(一般都沒(méi)有,選擇不涉及)
備案人(法人)
法人姓名(營(yíng)業(yè)執(zhí)照上的法人姓名)
法人的個(gè)人資料(身份證、座機(jī)、手機(jī)、郵箱、qq等等)
網(wǎng)站負(fù)責(zé)人資料:
網(wǎng)站負(fù)責(zé)人就是之后的空間商回執(zhí)電話(huà)和管局回執(zhí)電話(huà)打給誰(shuí)的事情, 可以直接填寫(xiě)法人的資料,但是如果法人不愛(ài)接電話(huà),那么備案可能被駁回。
網(wǎng)站負(fù)責(zé)人資料就是某個(gè)人的基本資料,按需填寫(xiě)即可。
幕布照片
在哪個(gè)空間商備案,就要拍哪個(gè)空間商的幕布照片,如果公司里沒(méi)有,聯(lián)系空間商發(fā)幕布,如果有,直接拍網(wǎng)站負(fù)責(zé)人的幕布照片,空間商那里都有例子怎么拍。
網(wǎng)站真實(shí)性核驗(yàn)單(核驗(yàn)單)
各個(gè)空間商都有示例,按示例填寫(xiě)即可。
網(wǎng)絡(luò)安全承諾書(shū)
如果需要,按示例做。
域名證書(shū)
如果需要,按示例做。
備案業(yè)務(wù)驗(yàn)證碼,這個(gè)東西是空間商限制你一臺(tái)主機(jī)能備案幾個(gè)域名的東西,阿里是買(mǎi)一臺(tái)3個(gè)月以上的服務(wù)器給5個(gè)備案業(yè)務(wù)驗(yàn)證碼,也就是說(shuō)你一個(gè)服務(wù)器只能有5個(gè)網(wǎng)站,非??尤?。這個(gè)東西在各個(gè)空間商的主機(jī)管理或備案系統(tǒng)里找,如果實(shí)在找不到就聯(lián)系客服問(wèn)。
資料全部提交后,備案流程是空間商先審核一遍,正常1個(gè)工作日內(nèi)就會(huì)有結(jié)果,如果被駁回,按照駁回原因修改,如果提交到管局,基本上就通過(guò)了,耐心等待15~25天即可。
- 主機(jī)
主機(jī)就是服務(wù)器,分為虛擬主機(jī)和云服務(wù)器,虛擬主機(jī)就類(lèi)似你D盤(pán)里的一個(gè)文件夾,云服務(wù)器類(lèi)似一臺(tái)完整的電腦,你可以遠(yuǎn)程鏈接到云服務(wù)器,進(jìn)行環(huán)境配置,程序搭建等等。
既然是主機(jī),就要有操作系統(tǒng)(OS),目前操作系統(tǒng)就兩個(gè)大類(lèi),Windows和Linux。
Windows(操作系統(tǒng)):
優(yōu)點(diǎn):圖形化界面,符合全世界的操作習(xí)慣;
缺點(diǎn):有些程序擴(kuò)展或者各種你想不到的配置問(wèn)題,windows操作起來(lái)太復(fù)雜?;蛘吒揪筒恢С諻indows。
Linux(操作系統(tǒng))推薦:
優(yōu)點(diǎn):開(kāi)源,也就是說(shuō)你只要堅(jiān)持學(xué)習(xí),你可以盡情的折騰他,面向服務(wù)端的各種應(yīng)用,擴(kuò)展比Windows好操作;
缺點(diǎn):命令行操作,對(duì)新手不是很有好,但是你只要堅(jiān)持折騰一段時(shí)間,入了門(mén)之后,會(huì)發(fā)現(xiàn)命令行操作才是程序員的歸屬!會(huì)讓你找到計(jì)算機(jī)世界的感覺(jué)!
選擇好后操作系統(tǒng),還要選擇鏡像(便于理解舉例:WindosXp,Win7,Win10這些都是鏡像)。
Windows(鏡像):
選擇中間版本即可(感覺(jué)中間版本使用的人最多,沒(méi)做過(guò)實(shí)際調(diào)查)
Linux(鏡像):
選擇中間版本即可(感覺(jué)中間版本用的人最多,沒(méi)做過(guò)實(shí)際調(diào)查),我自己使用的全是Centos6.x
選擇鏡像不用糾結(jié)?。?!
配置:
配置當(dāng)然是越高越好,根據(jù)老板的預(yù)算來(lái)吧。
搭建環(huán)境:
LAMP(Linux、Apache、Mysql、Php)
LNMP(Linux、Nginx、Mysql、Php)
不管是哪種環(huán)境,都能把網(wǎng)站跑起來(lái),不用糾結(jié)太多,這里不討論哪個(gè)好的問(wèn)題,等你慢慢成長(zhǎng)之后,自然會(huì)做出選擇。
重點(diǎn)是如何搭建環(huán)境
這里選擇通過(guò)面板搭建(面板就是把服務(wù)器一系列的操作變成網(wǎng)站后臺(tái)那種傻瓜式操作)
對(duì)于新手來(lái)說(shuō)很友好,而且也比較節(jié)省時(shí)間,等你以后成為高手之后,就可以?huà)仐壝姘澹蛘咦约簩?xiě)面板。
面板有很多,WDCP(老牌),寶塔(新晉),護(hù)衛(wèi)神等等。。。
這里推薦寶塔面板,百度搜一下就出來(lái),按照他官網(wǎng)的安裝教程,復(fù)制命令,進(jìn)入你的服務(wù)器粘貼命令,等待安裝完成。具體的一系列操作請(qǐng)去他的官網(wǎng)學(xué)習(xí)。
服務(wù)器知識(shí)非常龐大,這里只講怎么能夠把網(wǎng)站搭建起來(lái)的基礎(chǔ)知識(shí)。
- 網(wǎng)站程序
既然是初級(jí)phper,并且面向小公司,就講點(diǎn)小公司常用的程序吧。
小公司常用開(kāi)源程序,織夢(mèng)(dedecms)、帝國(guó)(Ecms)、論壇(discuz)、WP(wordpress)、Zblog(博客)、等等等等太多的開(kāi)源程序。
所有的開(kāi)源程序都有自己的一套語(yǔ)法,如果你是在一個(gè)傳統(tǒng)企業(yè),可能面對(duì)的是一套程序,只需要搞懂其中的結(jié)構(gòu)、語(yǔ)法就ok。
如果是你在一個(gè)小互聯(lián)網(wǎng)公司,你可能要維護(hù)幾十個(gè)不同程序?qū)懙牟煌W(wǎng)站(比較頭疼,需要你有較強(qiáng)的抗壓能力和學(xué)習(xí)能力,在這種公司提升的最快,因?yàn)槭裁词虑槎夹枰銇?lái)做。)
這里不討論各個(gè)程序的語(yǔ)法、結(jié)構(gòu)等等,這些內(nèi)容百度都能搜的到,只要你能耐心的看,耐心的學(xué)就行。
這里討論的是,無(wú)論是什么開(kāi)源程序,都有他的優(yōu)缺點(diǎn),而且,都不如自己寫(xiě)的程序來(lái)的順手,所以,如果有時(shí)間,一定要用php框架寫(xiě)一套自己的小型cms系統(tǒng),有助于你理解小型程序的根本,只要你理解了根本,剩下的就是扒模板,套語(yǔ)法的事情了。
至于PHP框架的選擇,這里推薦THINKPHP5.X,有人肯定會(huì)反駁我說(shuō)Yii、Lararvel什么什么的,我這里只是面向初級(jí)程序員,面向新手,最快,最容易,就是最好的。等新手成長(zhǎng)為熟手之后,并且還保持著堅(jiān)持學(xué)習(xí),他自然會(huì)學(xué)習(xí)不同的框架擴(kuò)展自己的技能!
注意:織夢(mèng)、帝國(guó)等程序非常容易被黑,要做好安全檢查,服務(wù)器權(quán)限等等
- 現(xiàn)在,我們域名、主機(jī)、程序都有了,需要把他們連到一起,才能把網(wǎng)站上線(xiàn)~~~
在域名備案的時(shí)候,你需要等待20天左右,域名才能備案完成,所以這些時(shí)間就是你搭環(huán)境、寫(xiě)程序的時(shí)間。
如果你是按照我說(shuō)的做的,服務(wù)器安裝的是寶塔面板,并且配置好了環(huán)境(lamp或lnmp),你現(xiàn)在需要在面板里添加網(wǎng)站,由于域名還沒(méi)備案成功,先填寫(xiě)一個(gè)IP+端口號(hào)即可訪(fǎng)問(wèn),IP地址填寫(xiě)你服務(wù)器的IP

這樣就可以暫時(shí)用IP加端口號(hào)訪(fǎng)問(wèn)你的網(wǎng)站,然后調(diào)試你的網(wǎng)站。
添加站點(diǎn)注意:有的程序入口文件是在二級(jí)目錄里,所以網(wǎng)站目錄要設(shè)置好
Thinkphp-5.x入口文件就在public目錄里,所以網(wǎng)站目錄要指向public目錄

偽靜態(tài)設(shè)置,有些網(wǎng)站404,多半是偽靜態(tài)的原因,根據(jù)程序的不同,選擇不同的偽靜態(tài)規(guī)則

- 安全
安全是網(wǎng)站必不可少的一部分
這里推薦使用云鎖服務(wù)器安全軟件,有程序掛馬查殺,目錄保護(hù),服務(wù)器訪(fǎng)問(wèn)保護(hù)等等功能,對(duì)于新手來(lái)說(shuō)足夠用了。
注意:寶塔在安裝插件或者擴(kuò)展的時(shí)候,有可能被云鎖攔截,停用云鎖的服務(wù)或者卸載云鎖再次安裝即可。
- 備份
一定要養(yǎng)成備份的習(xí)慣,無(wú)論是手動(dòng)備份還是自動(dòng)備份,不知道會(huì)出什么事情,這是救你的東西
1、基本的空間商都給服務(wù)器提供了快照功能,收費(fèi)的但是費(fèi)用不是很高,一定要設(shè)置好。
2、寶塔面板 計(jì)劃任務(wù)里提供了定時(shí)任務(wù)備份數(shù)據(jù)庫(kù)和網(wǎng)站,設(shè)置好。
3、手動(dòng)備份.sql文件,就是數(shù)據(jù)庫(kù),保證做到每天備份重要的數(shù)據(jù)。
- 工具
工欲善其事,必先利其器
推薦工具,根據(jù)你自己喜好選擇
開(kāi)發(fā)工具:
PhpStorm、SublimeText3
數(shù)據(jù)庫(kù)工具:
Navicat for Mysql
FTP:
Flashfxp
工具有很多,選擇自己喜歡的即可,選擇后,沒(méi)事??纯此呐渲?、插件等等,對(duì)開(kāi)發(fā)效率有很大的提升。
- 雜談
這篇筆記都是記錄的非常非?;A(chǔ)的東西,基本上全都走通一遍,下次就會(huì)了,程序員最重要的是保持住一顆學(xué)習(xí)的心,不斷的去探索,實(shí)踐,最終都會(huì)成為高手的~ 加油?。。?/p>