新手教程:建立网站的全套流程与详细解释
新手教程:建立網(wǎng)站的全套流程與詳細解釋
??????你要是 Baidu 這個話題,得到的結(jié)果八成都是廣告——他們都會告訴你,“嘿,我(或某公司)這里可以建網(wǎng)站,傻瓜式的喲,快來投奔我吧!” 新手一般都覺得建網(wǎng)站是一件超級復雜的事情,于是很天真很無邪地進了圈套,到最后還樂呵呵幫人數(shù)錢。傻瓜式的東西就如它的名字一樣,只是為傻瓜準備的,要格外小心。
我正式接觸計算機在 2002 年,接觸網(wǎng)站建設在 2003 年,想想時日也不短了,雖然不是什么高手,但還是有一定發(fā)言權(quán)滴。數(shù)月前,鼓動江堂兄從 Live Space 逃脫、建立了自己的窩,而近日又把自己的網(wǎng)站和 “統(tǒng)計之都” 網(wǎng)站都搬了家,然后也幫 “貝吉塔行星” 逃離了那抽風的 Live Space,后來有朋友問起關于如何建立個人網(wǎng)站的事情,所以干脆寫篇教程,把這建網(wǎng)站的來龍去脈講清楚。
一、建網(wǎng)站的準備材料:域名和空間
一個網(wǎng)站通常由域名和一堆網(wǎng)頁文件構(gòu)成:
- 域名:就是 “三達不溜什么什么點坑” 這樣的東西(如 www.yihui.name,不嚴格,見后話),它由一家非營利組織 ICANN管理,但它授權(quán)給了若干注冊商(registrar)去賣域名,你可以在這些域名經(jīng)銷商那里注冊頂級域名,所謂頂級域名就是 “字母或數(shù)字組合 +頂級域名后綴”,這些后綴包括常見的com/org/net,也包括不常見的 name/info/biz等,各家允許注冊的域名后綴可能有所不同,這就看個人喜好了;關于域名后綴,本來它是有含義的,比如 com 是 company,org 是organization,name是個人域名,等等,但我個人覺得這些東西已經(jīng)沒太大意義了,域名只要好記、看著像模像樣就可以了,管它是公司還是組織呢(有例外:如 gov等特殊后綴一般人不能注冊),那著名的del.icio.us網(wǎng)站就是個很好的例子,它不一定非得是美國網(wǎng)站,但這個域名就是注冊得很巧妙。頂級域名下面可以設置子域名,如二級三級域名,嚴格來說,www.yihui.name只是 yihui.name 的二級子域名,只是 www太盛行,以至于人們干脆把www..當作頂級域名了。animation.yihui.name 就是本站的一個子域名 /子站。說了半天,域名怎么注冊啊?你 Google 一下 “域名注冊”或“domain name registration”,頂上的Sponsored link 中都是有實力的注冊商,但我作為過來人要嚴重提醒的是,盡量不要在國內(nèi)注冊(尤其不要相信那個萬網(wǎng)的鬼話)。據(jù)說GoDaddy 還可以,我沒試過,只知道它似乎不能注冊. name 域名,我自己是在 name.com 注冊的域名(需要付美元,我用的PayPal,雙幣種的信用卡也可以)。
網(wǎng)站空間:想得簡單一些,空間和你的硬盤沒啥區(qū)別,只不過是空間服務商賣給你的一塊服務器硬盤位置而已,性能可能比你的 PC機好一點,網(wǎng)站空間就是放網(wǎng)頁文件的地方,網(wǎng)頁文件你可以簡單想象為你硬盤里的文件,它們也是按路徑訪問的,網(wǎng)址的路徑就對應著硬盤里的文件夾。網(wǎng)頁文件通常分為:
靜態(tài)網(wǎng)頁:其內(nèi)容是固定不變的,里面放著 HTML 代碼(網(wǎng)頁的一種語言),不管誰、不管什么時間訪問,內(nèi)容都一樣,通常以.
html/.htm 為文件名- 動態(tài)網(wǎng)頁:我估計現(xiàn)在大多數(shù)網(wǎng)站都是動態(tài)的了,所謂動態(tài)就是網(wǎng)頁文件會根據(jù)不同的條件解析生成不同的 HTML代碼,例如:某動態(tài)頁面根據(jù)時間和用戶 ID 向訪問者問好,早上訪問就說早上好,晚上訪問就說晚上好,路人甲來了就說路人甲你好……
動態(tài)頁面通常和數(shù)據(jù)庫掛鉤,用戶在訪問網(wǎng)頁的時候,網(wǎng)頁程序就存取數(shù)據(jù)庫,所以頁面內(nèi)容會不斷更新。動態(tài)頁面可能采取不同的語言編寫,如古老的微軟的ASP、盛行的開源的 PHP。現(xiàn)在網(wǎng)絡上有無數(shù)的網(wǎng)站系統(tǒng),我當然推崇 PHP+MySQL 的系統(tǒng)了,目前尤其看好 WordPress系統(tǒng)。 - 注意有些國外空間是幾乎可以當做自己的電腦使用的,包括編譯安裝程序(如 Python),SSH 登錄,MySQL可以在命令行中執(zhí)行,等等,國內(nèi)似乎沒見過能給空間這么大自由的 域名和空間沒有必然聯(lián)系,域名的作用就是作為一個字符串映射到一個 IP地址上,因為(1)IP 地址太難記了(2)IP 地址數(shù)目有限(同一個 IP 上可以放 N個域名)所以才需要域名這么個東西。這就意味著,你有換空間的自由。哪天對空間服務商不高興了,可以直接把他踹了,把域名解析到別家去,用另一家空間。哎哎,等會兒,啥叫域名解析?
二、關于網(wǎng)站的配置
1、域名的設置
注冊域名交完銀子之后,域名就是你的了,如果你在國內(nèi)注冊的,你花錢買的域名不一定真的是你的。一定要看你是否有以下權(quán)利:
- 修改注冊聯(lián)系人、管理聯(lián)系人、技術(shù)聯(lián)系人和付費聯(lián)系人信息,如果你在后臺找不到修改的地方,那么恭喜你,這域名好像不是你的,而是某奸商的,用WHOIS 查一下域名信息吧;
- 拿到授權(quán)碼(AuthCode),國內(nèi)也有叫域名轉(zhuǎn)移密碼的,這個碼很重要,如果你不知道或奸商不告訴你,那再次恭喜你,這個域名仍然不是你的,想搬家到別家注冊商都搬不了,萬一不行遇到這種情況,那么就去ICANN 投訴奸商,每天投訴三遍,如果某注冊商總是遭到投訴,ICANN 會修理它的,總之你一定要知道自己作為消費者有什么權(quán)利如果域名真的屬于你,那么你哪天對注冊商不高興了,也可以把它踹掉,轉(zhuǎn)移到別的注冊商下。
域名的設置主要是一些解析工作,包括:
域名服務器(nameserver):通常是ns*..之類的網(wǎng)址,這個服務器負責解析下面的各種設置,也就是說,它是域名各項設置的Boss。國內(nèi)一些域名注冊商通常以這一點為手段,卡住用戶,比如限制你只能使用它的域名服務器,然后再限制你最多只能設置 10 項 A記錄或 MX記錄等,多了要另外收費,這種規(guī)矩實在是很扯淡;尤其是對于那些需要多個子域名的用戶,這一點很不方便,國外情況好一些,至少我還沒見過有哪家限制你使用特定域名服務器的;
要特別提及的一點是,有些空間服務商只需要你把域名服務器設置為他們的域名服務器,剩下的所有解析問題你基本上都不用管了,你可以自由創(chuàng)建子域名,而不必添加
A 記錄
A 記錄:就是將域名指向主機 IP,可以將頂級域名或子域名指向特定的 IP,所以你的子域名和頂級域名可以不在同一臺服務器上,比如我可以將
www.yihui.name 指向 66.147.240.177,將 test.yihui.name 指向 127.0.0.1,等等。
其它設置:不說了,理論上一個 A 記錄就夠用了,別的都不用管。
2、主機的設置
域名設置好了之后,主機上也需要一些呼應工作。要是域名設置了 A 記錄,但主機上不 “接收”,那網(wǎng)站也沒法使用。主機如何接收取決于它安裝的網(wǎng)站服務程序,現(xiàn)在流行的是 Apache,當然也有少數(shù)網(wǎng)站依舊抱著 Windows IIS 大腿(用 ASP 語言 + Access 數(shù)據(jù)庫),據(jù)說近段時間又出現(xiàn)了一款新軟件,有取代 Apache 的可能,名字忘記了。以 Apache 為例吧,主機上會創(chuàng)建一個虛擬主機(Virtual Host)配置文件,告訴服務器,“嘿,有個網(wǎng)站指向了你,你要為這個網(wǎng)站服務,這個網(wǎng)站放在某某目錄下,如果用戶訪問某個網(wǎng)址,你要負責把該目錄下的文件拿出來給用戶看。” 大致原理就是這樣,細節(jié)不多說了。
對用戶來說,不用管那么多細節(jié),以上原理的實現(xiàn)對你來說就是在后臺把域名綁定到主機的目錄下(以及子域名綁定到子目錄下)。一般來說,網(wǎng)站還需要兩個輔助工具才能讓主人隨心所欲地配置自己的網(wǎng)站,即 FTP 和數(shù)據(jù)庫。
(1)用 FTP 傳輸網(wǎng)頁文件
FTP 就是用來傳文件到某一臺服務器的,只要你購買了虛擬主機服務,一般就會給你一個 FTP 帳號,你可以利用這個帳號登錄你的主機,把網(wǎng)頁文件傳上去,然后用戶就可以訪問了。一點常識是,index.htm/index.php 之類的網(wǎng)頁文件通常是你在訪問一個目錄時主機會自動為你查找的文件,比如你訪問 yihui.name,主機會自動查找有沒有 index.php,如果有,就執(zhí)行這個文件,生成 HTML 給你的瀏覽器。這個文件的文件名也許是可以配置的,但建議不要在這上面特立獨行。
現(xiàn)在又很多成熟的建站系統(tǒng),從網(wǎng)上下載下來然后傳到服務器上,訪問你的網(wǎng)址,按照提示一步步配置即可,跟裝軟件沒兩樣。
(2)網(wǎng)站數(shù)據(jù)庫
動態(tài)網(wǎng)站大多數(shù)需要數(shù)據(jù)庫(即使是文本文件 “數(shù)據(jù)庫”),如果你的網(wǎng)站用 PHP 語言,那么 MySQL 就是絕配了。若是 PHP+MySQL 空間(一般 Linux 主機都是這樣),主機服務商會給你分配 MySQL 數(shù)據(jù)庫帳號,包括:數(shù)據(jù)庫主機(多為 localhost)、數(shù)據(jù)庫名、用戶名、密碼。這四項將會在你安裝網(wǎng)頁程序的過程中要求你填寫。
三、網(wǎng)站的運行
對于那些程序員來說,第一個例子通常都是 hello world,如果你愿意看 hello world 的話,就把 “hello world” 用任何文本編輯工具寫在一個文本文件中,命名為 index.htm(注意 Windows 會默認隱藏文件擴展名!你自己保證文件名不是 index.htm.txt 吧,我不管了),傳到網(wǎng)站根目錄下,然后訪問你的網(wǎng)站,你就能欣喜地看到這個老得不能再老的 hello world 了。
一個像樣的網(wǎng)站當然不是 hello world 這么簡單,它的運行就像一個復雜的程序,可能存在文件之間的函數(shù)調(diào)用以及數(shù)據(jù)庫的存取等等。世上真正開發(fā)網(wǎng)站程序的人肯定是少數(shù),所以不用擔心,你就用別人的程序吧,典型的網(wǎng)站系統(tǒng)有:
但網(wǎng)站的維護并非一件簡單的事情,當你有權(quán)利面對所有的選項時,你也會覺得痛苦。像我這種業(yè)余玩了幾年網(wǎng)站的人都快有職業(yè)病了,什么地方?jīng)]對齊就會覺得不舒服,什么地方少了個空格一眼就看出來了,段首空格縮進 2 字符還是 1.9 字符感覺就是不一樣。所有的東西你都可以改,你愿意怎么布置就怎么布置。只需一個文本編輯器和 FTP,你就可以改了傳,傳了看,看了改。儼然永劫不復了。所以建網(wǎng)站也要有好心態(tài),千萬別完美心態(tài),不然這輩子都要不斷改。現(xiàn)在網(wǎng)站系統(tǒng)更新也快,隔三差五就有新功能,看得你心癢癢:我是不是該裝個 A 插件 / 換個 B 主題啊?張三家有個功能特別酷,我要不要琢磨一下是怎么弄的啊?……
所以,我是建議各位看官學習 HTML 和 CSS 以及 PHP+MySQL 呢,還是不建議呢?我也不知道。
還有搜索引擎優(yōu)化(SEO),采取一些策略讓搜索引擎喜歡你的網(wǎng)站,使得你的搜索排名靠前,你又得學習什么是網(wǎng)頁 Meta 信息(關鍵詞、描述),什么是 301 重定向,什么是 404 錯誤,什么是 Apache 的 Rewrite 模塊什么是偽靜態(tài)網(wǎng)址;……
四、摘要
頭一次見到把摘要寫到最后的吧?
付款;域名每年都要交錢的。
Google,因為空間性能很重要,不試不知道;根據(jù)你的建站需求買相應的空間(靜態(tài)?動態(tài)?需要多大?),國內(nèi)分不同種類的空間,可能按大小收費,國外據(jù)我了解的HostMonster 是沒有大小限制的,一口價,敞開讓你隨便用,當然,總會受硬盤大小限制
原文鏈接: https://yihui.name/cn/2009/06/how-to-build-a-website-as-a-dummy/
總結(jié)
以上是生活随笔為你收集整理的新手教程:建立网站的全套流程与详细解释的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 感量越大抑制频率约低_开关电源电磁兼容进
- 下一篇: 微机原理与接口技术 重点详解与章节总结—