PHP01 LAMP網站構建
學習要點
- 什麽是web?
- 開發動態網站所需的web構件?
- 幾種主流web應用程序平臺?
- HTTP協議與web的關系?
- Web的工作原理?
- LAMP網站開發組合概述?
- 如何學習PHP?
什麽是Web?
1 網頁構成網站,網站即Web軟件,屬於B/S架構軟件。
- Web架構系統特點
圖形化:文本、圖片、多媒體
與平臺無關
分布式:信息存儲分布式
動態的:信息提供者確保信息動態即使更新
交互的:通過超鏈接和表單與用戶進行交互
- Web應用系統優勢
基於瀏覽器,具有統一平臺和UI體驗
無需安裝,只要有瀏覽器,隨時隨地可以使用
總是保持最新版本,無需升級
數據存儲在雲端,基本無需擔心丟失
新一代web技術提供了更好的用戶體驗
2 web進化簡史
- web 1.0 信息廣播。
- web 2.0 信息交互。典型產品:博客,QQ空間等。
- web 5.0 移動互聯網,手機和pad移動設備訪問互聯網成為主流。
3 web開發標準
web1.0和web2.0時代,ie+adobe flash player,html,xhtml1.0,xhtml2.0
移動互聯網時代(Apple、Mozila,Opera),HTML5標準
動態網站開發所需的Web構件
- 動態網站開發是多種技術綜合應用,每種技術功能各自獨立又相互配合,所以我們需要掌握以下web構件技術:
客戶端瀏覽器:IE,FireFox,Safari
超文本標記語言:HTML
層疊樣式表:CSS
客戶端腳本編程語言:JavaScript
Web服務器:Apache,Nginx,TomCat,IIS
服務器端編程語言:PHP,JSP,ASP
數據庫管理系統:MySQL,Oracle,SQL Server
幾種主流的web應用程序平臺
性能比較 |
LAMP |
JavaEE |
ASP.NET |
運行速度 |
較快 |
快 |
一般 |
開發速度 |
非常快 |
慢 |
一般 |
運行損耗 |
一般 |
較小 |
較大 |
難易程度 |
簡單 |
難 |
簡單 |
運行平臺 |
Linux/Unix/Windows |
絕大多數平臺 |
僅Windows平臺 |
HTTP協議與web的關系
1 HTTP協議
HTTP規範1.0和1.1定義了HTTP消息格式。HTTP報文由從客戶機到服務器的請求和從服務器到客戶機的相應構成,所以HTTP消息分為請求消息和響應消息兩類。
2 瀏覽器查看HTTP請求消息和響應消息
3 URL概述
Uniform resource Locator,統一資源定位符
格式:
http://<IP地址>/[端口號]/路徑/[?<查詢信息>]
例如:
http://www.imcore.cn/book/index.html
http:超文本傳輸協議。FTP,telnet
www:代表一臺web服務器
imcore.cn:服務器域名
book:站點上的目錄
index.html:book文件夾中的一個HTML文件,即網頁。
Web的工作原理
1 服務器不帶應用程序服務器和數據庫
2 帶應用程序服務器的web服務器
3 帶應用程序服務器以及數據庫的web服務器
LAMP網站開發組合概述
1 Linux操作系統
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟件、應用程序和網絡協議。它支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作系統。
Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬件設備中,比如手機、平板電腦、路由器、視頻遊戲控制臺、臺式計算機、大型機和超級計算機。
嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU 工程各種工具和數據庫的操作系統。
2 Apache服務器和Nginx服務器
Apache是世界使用排名第一的Web服務器軟件。它可以運行在幾乎所有廣泛使用的計算機平臺上,由於其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。它快速、可靠並且可通過簡單的API擴充,將Perl/Python等解釋器編譯到服務器中。
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。由俄羅斯的程序設計師Igor Sysoev所開發,供俄國大型的入口網站及搜索引擎Rambler(俄文:Рамблер)使用。其特點是占有內存少,並發能力強,事實上nginx的並發能力確實在同類型的網頁服務器中表現較好,中國大陸使用nginx網站用戶有:京東、新浪、網易、騰訊、淘寶等。
3 MySQL數據庫管理系統
關系型數據庫管理系統。
https://www.mysql.com/downloads/
企業版:MySQL Enterprise Edition (commercial)
集群版:MySQL Cluster CGE (commercial)
社區版(免費開源):MySQL Community Edition (GPL)
4 PHP服務器腳本編程語言
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
如何學習PHP
- 學習線路
- 堅持動手
- 解決問題為先原則,避免鉆牛角尖
- Bug。Bug有助於提升個人經驗值,不要擔心,不要煩躁。學會考慮問題出在哪個環節,學會定位問題。
- 如何成為優秀的Web程序員:克服慣性,紮實的技術功底(計算機科學基礎知識不要拋棄:數據結構、離散數學、編譯原理、計算機網絡等等),編碼規範,不要逃避問題,擴展自己的想象力,對新技術的渴求,註重設計模式,多與高手交流,韌性和毅力,寫博客,考慮接單。
PHP01 LAMP網站構建