所謂的LAMP是指構建在Linux之上經典的一種web架構方式,其中L指的是Linux,A指的是Apache的httpd,M指的是Mysql或MariaDB,P指的是PHP,這種組合方式的基本工作模式是有httpd負責接收和相應用戶的請求,然后將需要處理的php頁面交由后端的php應用程序處理,而php應用程序處理php頁面時的數據存儲在Mysql數據庫中,最后在由httpd將結果返還給客戶端,本文主要介紹如何使用源代碼編譯構建這種組合。
一.程序版本及其編譯環境
Linux:CentOS7 |
httpd:2.4.6 |
mysql:5.6.13 |
php:5.4.26 |
1.首先解決依賴關系2.安裝httpd
(1).httpd2.4以后的版本要求arp(Apache Portable Runtime)的版本是1.4以上,以及安裝apr-util
tar -xf apr-1.4.6.tar.bz2 cd apr-1.4.6 ./configure –prefix=/use/local/apr make & make install |
tar -xf apr-util-1.5.2.tar.bz2 cd apr-util-1.5.2 ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr make & make install |
(2)httpd也依賴于pcre-devel,因此需要安裝
yum -y install pcre-devel |
(3)ssl模塊依賴openssl-devel
yum -y install openssl-devel |
(4)安裝zlib庫
yum -y install zlib |
(4)編譯安裝httpd
tar -xf httpd-2.4.6.tar.bz2 cd httpd-2.4.6 ./configure –prefix=/usr/local/httpd –sysconfdir=/etc/httpd –enable-so –enable-ssl –enable-cgi –enable-rewrite –enable-zlib –enable-module=most –enable-mpms-shared=all –with-mpm=prefork –with-apr=/usr/share/apr –with-apr-util=/usr/share/apr-util |
(5)在主配置文件中指明pid文件
PidFile "/var/run/httpd.pid" |
(6)啟動服務并測試
使用curl命令也能正常的請求到資源
修改根文檔目錄時要注意對應文件的權限,否則可能會出錯。
2.安裝mysql
(1)由于mysql使用的cmake項目構建工具,因此先安裝cmake
yum -y install cmake |
(2)創建運行mysql的用戶
groupadd -r mysql useradd -g mysql -r mysql |
(3)安裝 Curses library
yum -y install ncurses-devel |
(3)解壓展開
tar -xf mysql-5.6.13.tar.gz |
(4)編譯安裝mysql
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci make & make install |
(5)啟動服務并測試
/usr/local/mysql56/support-files/mysql.server start |
(6)為mysql提供sysv分格的啟動腳本
cp /usr/local/mysql56/support-files/mysql.server /etc/rc.d/init.d/mysqld chmod +x /etc/rc.d/init.d/mysqld |
將mysql添加至服務列表
chkconfig –add mysqld chkconfig mysqld on |
測試,發現能正常啟動和關閉
(7).配置環境變量,方便使用mysql客戶端連接工具,編輯/etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH |
保存退出后,讀取一下配置文件
. /etc/profile.d/mysql.sh |
3.安裝php
(1)先安裝php會使用到的依賴程序
yum -y install bzip2-devel libmcrypt-devel libxml2-devel |
(2)解壓展開
tar -xf php-5.4.26.tar.bz2 cd php-5.4.26 |
(3)編譯
./configure –prefix=/usr/local/php54 –with-mysql=/usr/local/mysql56 –with-openssl –with-mysqli=/usr/local/mysql56/bin/mysql_config –enable-mbstring –with-zlib –enable-sockets –with-mcrypt –with-apxs2=/usr/local/httpd/bin/apxs –with-libxml-dir=/usr/ –with-config-file-path=/usr/local/php56 make make install |
注意:這一步最好將make和make install分開,否則可能會報錯
(4)為php提供配置文件
cp php.ini-production /etc/php.ini |
(5)修改httpd的主配置文件,使之能支持php,添加如下內容
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps |
并將DirectoryIndex index.html 改為DirectoryIndex index.php index.html
(6)測試
至此,編譯成功了。
二.安裝wordpress
1.在mysql中創建wordpress使用的數據庫,并做授權
create database wordpress; grant all privileges on wordpress.* to "wordpress"@"localhost" identified by "wordpress"; |
2.下載wordprss并安裝之
(1)下載wordprss最新版本
wget http://wordpress.org/latest.tar.gz |
(2)解壓
tar -xf latest.tar.gz |
(3)將wordprss復制到httpd的根文檔目錄之下
cp -R wordpress/* /httpd/wordpress |
(4)給wordpress提供配置文件
cp wp-config-sample.php wp-config.php |
(5)修改配置文件
(6)測試結果
至此,wordpress安裝完成。
三.總結
由于之前使用yum來安裝的,很順利,但這次使用編譯安裝的時候遇到了很多問題,但是很多問題通過錯誤提示,看錯誤日志就能解決,不能解決的google一下就行,希望大家遇到錯誤的時候也不要害怕。最后,最近看到一句話,很有道理,與大家分享,與大家共勉:正確的判斷來源于經驗,經驗來源于錯誤的判斷。
原創文章,作者:zhangbao,如若轉載,請注明出處:http://www.www58058.com/64006