Linux中什麼是動態網站環境及如何部署
Linux中什麼是動態網站環境及如何部署
當談論起網站時,我們可能聽說過靜態和動態這兩個詞,但卻不知道它們的含義,或者從字面意思瞭解一些卻不知道它們的區別。
這一切可以追溯到網站和網路應用程式,Web應用程式是一個網站,但很多網站不是Web應用程式,例如微博是一個網站也是一個應用程式,但像有的公司的官網是網站但不是網路應用程式。同時,也會經常聽到稱為網站的是靜態網站,稱為網路應用的是動態網站。
接下來,我們分別介紹靜態網站和動態網站的區別。
靜態站點是最基本的網站型別,也是最容易建立的。 它不需要伺服器端處理,只需要客戶端。 客戶端技術是HTML,CSS和JavaScript。 簡單來說,它不需要使用後端。 靜態網站完全按照其儲存方式提供給使用者,這意味著頁面上的任何內容都不會被使用者甚至網站管理員更改,除非重新設計網站或網站管理員直接進入程式碼進行更改。 沒有任何內容儲存,除了網站的實際頁面;沒有使用者,沒有評論,沒有部落格帖子或任何互動性。 製作靜態網站不需要程式語言,從技術上講,JavaScript是一種程式語言,但不需要建立靜態站點。 但是,如果一個站點使用JavaScript,但沒有PHP或任何其他程式語言,它仍然被認為是一個靜態站點,因為JavaScript是一種客戶端語言。
靜態網頁由“固定程式碼”構成,除非網站開發人員進行更改,否則網頁上的任何內容都不會發生變化。 可以把它想象成一個企業宣傳冊。 這就是為什麼靜態網站有時被稱為小冊子網站的原因,因為它們會為您提供大量與手冊相同的資訊。因此,如果需要建立一個只需要獲取資訊並且不會定期更新的網站,那麼建立靜態網站會更加簡單並且可能更有效。
有一種簡單的方法可以確定網站是否是動態的。 如果使用者可以與它進行互動,那麼它就是一個動態網站。 因此,我們可能訪問的大多數網站都是動態網站,無論是知乎,豆瓣,Facebook還是Digital-Tutors,使用者都可以與網站進行互動,單單能點選網站中的連結並不能說明問題,像是評論帖子,建立使用者個人資料或進行預訂更能證明。
動態站點使用PHP等語言與儲存在資料庫中的資訊進行互動。 因此,動態網站的建立要複雜得多且成本高昂。 不僅需要Web託管,還必須建立資料庫或伺服器。 用於建立動態站點的語言也比客戶端語言複雜得多。
大多數動態網站利用內容管理系統來管理他們的內容。通常,開發人員將為其客戶建立自定義CMS(使用PHP和MySQL),但這不是必需的。有大量免費系統可供您使用,如WordPress,Drupal和Joomla。您可能會聽說PHP和ASP.NET用於動態生成HTML。這實際上只是意味著那些程式語言可以通過指導,改變和編寫HTML,而無需人員實際進入程式碼並進行更改。通常與動態站點相關的另一個術語是CRUD,它代表建立,讀取,更新和刪除。當您使用動態站點時,所有這四件事都會發生,因為它們指的是資料庫的功能。想想一個部落格。在任何部落格平臺中,無論如何都要成功,您必須能夠建立內容,然後才能在頁面上閱讀或檢視該內容。您應該能夠更新或編輯您的帖子,然後也可以選擇刪除它們。所有這些工作都發生在資料庫中。內容管理系統使這一過程成為可能。
以上內容就是靜態網站和動態網站的區別,接下來我們瞭解一下如何部署動態網站環境。
LNMP 動態網站部署架構是一套由 Linux + Nginx + MySQL + PHP 組成的動態網站系統解決方案,具有免費、高效、擴充套件性強且資源消耗低等優良特性。
一.準備工作
在使用原始碼包安裝服務程式之前,首先要讓安裝主機具備編譯程式原始碼的環境,他需要具備 C 語言、C++語言、Perl 語言的編譯器,以及各種常見的編譯支援函式庫程式。因此請先配置妥當 Yum 軟體倉庫,然後把下面列出的這些軟體包都統統安裝上,在Linux伺服器中使用wget命令下載LNMP動態網站部署架構所需的16個軟體原始碼包和1個用於檢查效果的論壇網站系統軟體包。
- 配置 MySQL 服務
建立一個名為 mysql 的使用者,專門用於負責執行MySQL 資料庫,解壓、編譯、安裝 MySQL 資料庫服務程式,service 命令啟動 mysqld 資料庫服務。
三.配置 Nginx 服務
Nginx 是一款相當優秀的用於部署動態網站的輕量級服務程式,它最初是為俄羅斯門戶站點而開發的,因其穩定性、功能豐富、佔用記憶體少且併發能力強而備受使用者的信賴。目前國內諸如新浪、網易、騰訊等門戶站點均已使用了此服務。
四.配置PHP服務
PHP(Hypertxt Preprocessor,超文字前處理器)是一種通用的開源指令碼語言,發明於 1995年,它吸取了 C 語言、Java 語言及 Perl 語言的很多優點,具有開源、免費、快捷、跨平臺性強、效率高等優良特性,是目前 Web 開發領域最常用的語言之一。
具體配置服務過程,參考《Linux就該這麼學》,書裡詳細介紹了各個步驟的程式碼實現,清楚直觀,是實現