理论+实验:LAMP网站服务器部署(超详细版本)
目錄
- 一、 LAMP介紹
- 二、Apache 簡介
- 三、Apache 的主要特點
- 四、搭建YUM倉庫
- 五、編譯安裝HTTP服務(wù)
- 六、站點部署
- 6.1 基于域名主機的
- 6.2 基于IP地址的
- 6.3 基于端口的
- 七、安裝mysql
- 八、安裝PHP環(huán)境
- 九、安裝phpMyadmin
一、 LAMP介紹
? LAMP 架構(gòu)是目前成熟的企業(yè)網(wǎng)站應(yīng)用模式之一,指的是協(xié)同工作的一整套系統(tǒng)和
相關(guān)軟件,能夠提供動態(tài) Web 站點服務(wù)及其應(yīng)用開發(fā)環(huán)境。LAMP 是一個縮寫詞,具
體包括 Linux 操作系統(tǒng)、Apache 網(wǎng)站服務(wù)器、MySQL 數(shù)據(jù)庫服務(wù)器、PHP(或 Perl、
Python)網(wǎng)頁編程語言。本章將以源碼編譯的方式搭建 LAMP 環(huán)境,能夠滿足企業(yè)定
制化的需求。
? 在構(gòu)建 LAMP 平臺時,各組件的安裝順序依次為 Linux、Apache、MySQL、PHP。
其中 Apache 和 MySQL 的安裝并沒有嚴格的順序;而 PHP 環(huán)境的安裝一般放到最后,
負責(zé)溝通 Web 服務(wù)器和數(shù)據(jù)庫系統(tǒng)以協(xié)同工作。
二、Apache 簡介
? “Apache HTTP Server”是開源軟件項目的杰出代表,基于標準的 HTTP 網(wǎng)絡(luò)協(xié)議提供
網(wǎng)頁瀏覽服務(wù),在 Web 服務(wù)器領(lǐng)域中長期保持著超過半數(shù)的份額。Apache 服務(wù)器可以運
行在 Linux、UNIX、Windows 等多種操作系統(tǒng)平臺中。
? Apache 服務(wù)器是針對之前出現(xiàn)的若干個 Web 服務(wù)器程序進行整合、完善后形成的軟
件,其名稱來源于“A Patchy Server”,意思是“基于原有 Web 服務(wù)程序的代碼進行修改(補
丁)后形成的服務(wù)器程序”。
1995 年, Apache 服務(wù)程序發(fā)布了 1.0 版本,之后一直由“Apache Group”負責(zé)該項目
的管理和維護;直到 1999 年,在“Apache Group”的基礎(chǔ)上成立了 Apache 軟件基金會(Apache Software Foundation,ASF)。目前,Apache 項目一直由 ASF 負責(zé)管理和維護。
? ASF 是非盈利性質(zhì)的組織,最初只負責(zé)“Apache Web”服務(wù)器項目的管理,隨著 Web
應(yīng)用需求的不斷擴大,ASF 逐漸增加了許多與 Web 技術(shù)相關(guān)的開源軟件項目,因此 Apache
現(xiàn)在不僅僅代表著 Web 服務(wù)器,更廣泛地代表著 ASF 管理的眾多開源軟件項目。ASF 基
金會的官方網(wǎng)站是 http://www.apache.org/。
? “Apache HTTP Server”是 ASF 旗下著名的軟件項目之一,其正式名稱是“httpd”,也就
是歷史上的 Apache 網(wǎng)站服務(wù)器。在后續(xù)內(nèi)容中,若未作特殊說明,使用“Apache”或者“httpd”,
均指的是“Apache HTTP Server”。
三、Apache 的主要特點
? 1、開放源代碼:這是 Apache 服務(wù)器的重要特性之一,也是其他特性的基礎(chǔ)。
Apache 服務(wù)程序由全世界的眾多開發(fā)者共同維護,并且任何人都可以自由使
用,這充分體現(xiàn)了開源軟件的精神。
? 2、跨平臺應(yīng)用:這個特性得益于 Apache 的源代碼開放。Apache 服務(wù)器可以運
行在絕大多數(shù)軟硬件平臺上,所有 UNIX 操作系統(tǒng)都可以運行 Apache 服務(wù)
器,甚至 Apache 服務(wù)器可以良好地運行在大多數(shù) Windows 系統(tǒng)平臺中。
Apache 服務(wù)器的跨平臺特性使其具有被廣泛應(yīng)用的條件。
? 3、支持各種Web 編程語言:Apache服務(wù)器可支持的網(wǎng)頁編程語言包括Perl、PHP、
Python、Java 等,甚至微軟的 ASP 技術(shù)也可以在 Apache 服務(wù)器中使用。支
持各種常用的 Web 編程語言使 Apache 具有更廣泛的應(yīng)用領(lǐng)域。
? 4、模塊化設(shè)計:Apache 并沒有將所有的功能集中在單一的服務(wù)程序內(nèi)部,而是
盡可能地通過標準的模塊實現(xiàn)專有的功能,這為 Apache 服務(wù)器帶來了良好的
擴展性。其他軟件開發(fā)商可以編寫標準的模塊程序,從而添加 Apache 本身
并不具有的其他功能。
? 5、運行非常穩(wěn)定:Apache 服務(wù)器可用于構(gòu)建具有大負載訪問量的 Web 站點,很
多知名的企業(yè)網(wǎng)站都使用 Apache 作為 Web 服務(wù)軟件。
? 6、良好的安全性:Apache 服務(wù)器具有相對較好的安全性,這是開源軟件共同具
有的特性。并且,Apache 的維護團隊會及時對已發(fā)現(xiàn)的漏洞提供修補程序,
為 Apache 的所有使用者提供盡可能安全的服務(wù)器程序。
四、搭建YUM倉庫
- 先把yum倉庫搭建好才能安裝LAMP,掛載一下,一般用永久掛載,這里方便用了臨時的。
- 在/etc/yum.repos.d/目錄里創(chuàng)建一個backup目錄,再把里面C開頭的文件全部移動到backup目錄里,復(fù)制一個本地源文件到local.repo
- 在編輯local.repo,和下面一樣就行
- 清除cache緩存,在緩存一下
五、編譯安裝HTTP服務(wù)
-
安裝Apache所需軟件
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
httpd-2.4.29.tar.gz -
將上面3個包傳到opt目錄下
- 解壓三個包
- 將apr-1.6.2 移動到httpd-2.4.29/srclib/apr目錄下、將apr-util-1.6.0移動到httpd-2.4.29/srclib/apr-util目錄下
- 安裝環(huán)境依賴包
Apache的配置需要這些軟件包的支持,因此應(yīng)先安裝這些軟件的開發(fā)包,以便提供相應(yīng)的庫和頭文件,確保Apache的安裝順利完成
- 安裝模塊
- 編譯及安裝
- httpd.conf修改配置文件
- 創(chuàng)建軟連接
測試:
瀏覽器輸入服務(wù)器ip地址就可以驗證!!!
驗證成功
(注意,網(wǎng)頁默認顯示內(nèi)容為:/usr/local/httpd/htdocs/index.html)
六、站點部署
6.1 基于域名主機的
- 創(chuàng)建51xit和52xit目錄
- 在往兩個文件里單獨輸入字符
- 在客戶端yum安裝一下lynx工具
- 登錄客戶端訪問www.51xit.top ,在訪問www.52xit.top驗證一下
6.2 基于IP地址的
(使用上面實驗的環(huán)境下做的)
主機上現(xiàn)在有一塊網(wǎng)卡,在添加一塊網(wǎng)卡,然后配置一下新網(wǎng)卡
- 查看一下新網(wǎng)卡的UUID ,并把新網(wǎng)卡UUID復(fù)制下來
- 在進入默認網(wǎng)卡目錄查看一下,并復(fù)制編輯新網(wǎng)卡
- 重啟一下網(wǎng)卡,關(guān)閉ens36網(wǎng)卡,在開啟ens36網(wǎng)卡
- 在把配置里修改一下
- 把Include conf/extra/httpd-vhosts.conf 前面的#號去掉,沒有的話就不用去掉!!!
- 在真機訪問的話,要把host映射一下
- 驗證一下,登錄客戶機訪問www.51xit.top 在訪問www.52xit.top
6.3 基于端口的
(使用上面實驗的環(huán)境下做的,和上面兩個基本一樣,就是把端口改一下就行)
-
一塊網(wǎng)卡:20.0.0.6
-
把Include conf/extra/httpd-vhosts.conf 前面的#號去掉,沒有的話就不用去掉!!!
- 在把配置里修改一下
- 把監(jiān)聽端口加上
- 重啟httpd
- 更改客戶端hosts映射關(guān)系
- 登錄客戶機訪問www.51xit.top 在訪問www.52xit.top,驗證一下就行。
七、安裝mysql
- 安裝環(huán)境
八、安裝PHP環(huán)境
[root@lamp ~]# yum -y install \ gd \ libpng \ libpng-devel \ pcre \ pcre-devel \ libxml2-devel \ libjpeg-devel #############上面環(huán)境解釋########### [root@lamp ~]# yum -y install \ gd \ ###是處理圖形的擴展庫 libpng \ ###處理png圖片 libpng-devel \ ###處理png圖片 pcre \ ###支持正則表達式 pcre-devel \ ###支持正則表達式 libxml2-devel \ ###支持xml2版本格式 libjpeg-devel \ ###處理jpeg圖片 -------------------安裝PHP模塊------------------------- [root@lamp ~]# cd /opt [root@localhost opt]# tar jxvf php-5.6.11.tar.bz2 ###解壓PHP源碼包 [root@lamp opt]#cd php-5.6.11 ./configure \ --prefix=/usr/local/php5 \ --with-gd \ --with-zlib \ --with-apxs2=/usr/local/httpd/bin/apxs \ --with-mysql=/usr/local/mysql \ --with-config-file-path=/usr/local/php5 \ --enable-mbstring ########上面模塊的解釋######## ./configure \ --prefix=/usr/local/php5 \ ###指定安裝路徑 --with-gd \ ###開啟剛剛jpeg、png的包 --with-zlib \ ###支持里面當中php的函數(shù)庫 --with-apxs2=/usr/local/httpd/bin/apxs \ ###指定核心模塊,不指定php里面的圖像是出不來的 --with-mysql=/usr/local/mysql \ ###關(guān)聯(lián)數(shù)據(jù)庫 --with-config-file-path=/usr/local/php5 \ ###配置文件路徑 --enable-mbstring ###支持文本,處理文本,處理多字節(jié)字符串[root@localhost php-5.6.11]# make -j4 && make install ###編譯安裝,-j4根據(jù)cpu核心數(shù)來配置,可以更快一些 [root@localhost php-5.6.11]# cp php.ini-development /usr/local/php5/php.ini [root@localhost php-5.6.11]# ln -s /usr/local/php5/bin/* /usr/local/bin/ ###把/usr/local/php5/bin/* 下面所有軟連接到/usr/local/bin/ 下#####下面兩句代表的是讓Apache交給php處理動態(tài)請求######### [root@localhost php-5.6.11]# vim /etc/httpd.conf AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.php index.html ###插入index.php默認主頁,看看能不能支持php[root@lamp php-5.6.11]# service httpd restart ###改了配置一定要重啟一下[root@lamp php-5.6.11]# vim /usr/local/httpd/htdocs/index.php ###編輯PHP首頁文件,寫入以下信息 <?php phpinfo(); ?> [root@lamp php-5.6.11]# service httpd restart ###重啟httpd服務(wù)[root@localhost htdocs]# mv index.html index.php ###把index.html改成php mv: overwrite ‘index.php’y ###yes [root@localhost htdocs]# ls ###查看一下,就只有index.phpindex.php [root@localhost htdocs]# cat index.php ###里面是剛剛配置的調(diào)用 <?php phpinfo(); ?>測試:瀏覽器輸入20.0.0.6,就顯示php頁面了
九、安裝phpMyadmin
mysql> CREATE DATABASE bbs; ###創(chuàng)建一個數(shù)據(jù)庫 mysql>GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123'; ###下面四行是上面解釋### GRANT all :授權(quán),提升權(quán)限、給予權(quán)限 ON bbs.*:作用在bbs數(shù)據(jù)庫中的所有表 'bbsuser'@'%':bbsuser用戶,%代表任意終端去訪問,指定ip段登錄可以把%換成ip網(wǎng)段 IDENTIFIED BY 'admin123':賦予一個abc123密碼mysql>flush privileges; ###刷新數(shù)據(jù)庫,用CREATE一定要刷新 mysql>quit ###退出 [root@localhost ~]# cd /opt/ ###進到opt把論壇包上傳進去[root@localhost opt]# [root@localhost opt]# unzip Discuz_X3.4_SC_UTF8.zip ###把論壇包解壓到當前目錄,指定目錄的話就在最后加 -d 路徑[root@localhost opt]# cd /opt/dir_SC_UTF8/ ###先進去/opt/dir_SC_UTF8目錄下[root@localhost dir_SC_UTF8]# cp -r upload/ /usr/local/httpd/htdocs/bbs ###-r遞歸的方式復(fù)制upload/到/usr/local/httpd/htdocs/bbs里[root@localhost dir_SC_UTF8]# cd /usr/local/httpd/htdocs/bbs/[root@localhost bbs]# chown -R daemon ./config [root@localhost bbs]# chown -R daemon ./data/ [root@localhost bbs]# chown -R daemon ./uc_client/ [root@localhost bbs]# chown -R daemon ./uc_server/data/瀏覽器輸入20.0.0.6/bbs就可以一步一步可視化操作了!
總結(jié)
以上是生活随笔為你收集整理的理论+实验:LAMP网站服务器部署(超详细版本)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。