什麼是LAMP架構?
L : Linux,2.6.18-308.el5(redhat5.8)
A :Apache,httpd 2.4.4
M :
mysql-5.5.28
P : php-5.4.13
LAMP結構的l兩種方式
1. 所有用rpm包進行安裝
2. 所有用編譯源碼包的方式進行安裝
由於所有rpm包進行安裝,只須要配置yum源,而後用鏡像文件進行安裝便可,此處再也不贅述,如下安裝配置爲第二種方式,所有用源碼包,如下爲安裝的版本
linux2.6.18 + httpd2.4.4 + mysql-5.5.28 + php-5.4.13
下載好以上組件以後,配置步驟以下
一.Linux
1.首先配置yum源
# vim /etc/yum.repo.d/my.repo
[huwentao]
name = huwentao
baseurl = file:///mnt/cdrom/Server
enabled = 1
gpgcheck =
0
2.掛載光盤鏡像
# mkdir
/mnt/cdrom
# mount /dev/cdrom /mnt/cdrom
3.安裝必要的組
# yum grouplist
查看是否安裝了一下兩個組件沒有安裝的用如下兩個命令進行安裝
# yum -y groupinstall "Development Tools"
# yum -y groupinstall "
Development Libraries"
4. 關掉httpd防火牆功能,和selinux的做用
# service iptables stop
# setenforce 0
二.安裝配置httpd
下載
apr-1.4.6.tar.bz2
apr-util-1.4.1.tar.bz2
httpd-2.4.4.tar.gz
apr 和 apr-util 是httpd的必要組件,所以先編譯安裝這兩個組件
1. 編譯安裝apr-1.4.6.tar.bz2
# tar -xf apr-1.4.6.tar.bz2
# cd apr-1.4.6
# ./configure --prefix=/usr/local/apr
# make & make install
2.
編譯安裝apr-util-1.4.1.tar.bz2
# tar -xf apr-util-1.4.1.tar.bz2
# cd apr-util-1.4.1
# ./configure --prefix=/usr/local/apr-util
--with-apr=/usr/local/apr
# make & make install
3. 編譯安裝httpd-2.4.4.tar.gz
# yum install pcre-devel 由於依賴於此包,因此先安裝pcre
# tar -xf httpd-2.4.4.tar.gz
# cd httpd-2.4.4
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=most --with-mpm=event
上面的編譯配置字段不在一一地贅述,感興趣的能夠在網上進行查找並瞭解
以上爲馬哥教育中所講的關於configure的配置,可是在我配置過程當中卻出現如下
錯誤
configure: error: MPM most does not support dynamic loading.
意思是不可以動態的進行加載mpm模塊,首先我來解釋如下什麼叫作mpm
MPM(多處理模塊)
Apache HTTP 服務器被設計爲一個功能強大,而且靈活的 web 服務器, 能夠在不少平臺與環境中工做。不一樣平臺和不一樣的環境每每須要不一樣 的特性,或可能以不一樣的方式實現相同的特性最有效率。Apache httpd 經過模塊化的設計來適應各類環境。這種設計容許網站管理員經過在 編譯時或運行時,選擇哪些模塊將會加載在服務器中,來選擇服務器特性
Apache HTTP模塊
1. prefork 模型
prefork模型是一個進程響應一個請求的模式
2
. worker模型
worker模型一個線程響應一個請求的模式, 可是由於Linux系統設計緣由,對於線程的工做方式並非特別的支持,所以通常而言此模式下的工做並無想象中的那麼高效
3. event模型
event模型也是一個線程響應一個請求的模式,可是他自身會分配一些可用的進程和線程用於服務某些請求,而不用頻繁的建立線程和進程。
具體不可以加載動態模塊的緣由不太清楚,所以我索性就把動態模塊給去掉了,默認的模型設成了event
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most -with-mpm=event
# make & make install
4. 加載http命令到PATH環境變量中
# vim /etc/profile.d/httpd.sh
export
PATH=$PATH:/usr/local/apache/bin
5. 改變其pid文件
# vim /etc/httpd/httpd.conf
PidFile /var/run/httpd.pid
5. 啓動測試apache服務器
# apachectl start
啓動apache服務器
在瀏覽器中測試,輸入本身主機的ip地址
http://192.168.40.129 ,顯示
it works
三. mysql服務器的安裝過程
mysql的安裝方式
1. 源碼包安裝
2. 二進制包安裝
3. rpm包的安裝
此處選擇的方式爲mysql的二進制包的安裝過程
1. 建立mysql用戶
#
groupadd -r -g 306 mysql
#
useradd -r -g 306 -u 306 mysql
2. 添加一塊硬盤,建立邏輯卷
<1>建立分區
# fdisk /dev/sdb
n 建立一個分區
p 主分區
回車默認
+10G
t
變換分區類型
8e
變換成lvm
w 保存退出
<2>建立邏輯卷
# parprobe
# pvcreate /dev/sdb1
# vgcreate myvg /dev/sdb1
# lvcreate -n mydata
-L 5G
myvg
<3> 格式化並掛載
# mk2efs -j /dev/myvg/mydata
# make -pv /mydata/data
# vim
/etc/fstab
# mount -a
從新掛載全部文件系統
3. 初始化mysql
下載
mysql-5.5.55-linux2.6-x86_64.tar.gz
# tar -xf
mysql-5.5.55-linux2.6-x86_64.tar.gz -C /usr/local/
# cd
mysql-5.5.55-linux2.6-x86_64
# ln -sv /usr/local/mysql-5.5.55-linux2.6-x86_64.tar.gz
/usr/local/mysql
# chown -R mysql:mysql /usr/loca/mysql/*
# ./scripts/mysql_install_db
--datadir=/mydata/data/ --user=mysql
# chown -R root /usr/local/mysql/*
# chown -R mysql:mysql /mydata/data
4. 安裝完成以後一些庫文件,頭文件,man文檔的處理
<1>設置開機自動啓動
# cp /usr/lcoal/mysql/support-files/mysql.server
/etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld on
<2>頭文件建立連接
# ln -sv /usr/local/mysql/include /usr/include/mysql
<3> 庫文件的加載
# vim /etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib
# ldconfig -v
從新加載庫文件
<4> man文檔的路徑加載
# vim /etc/man.conf
MANPATH /usr/local/mysql/man
<5> 配置文件複製
# cp /usr/local/mysql/support-files/my-large.cnf
/etc/my.cnf
# vim /etc/my.cnf
datadir /mydata/data
<6>啓動mysqld
# service mysqld start
# mysql
配置完成
四. 安裝配置php
下載軟件,由於配置的php要用到mcrypt的做用,所以下載的軟件包以下
libmcrypt-2.5.7-5.el5.x86_64.rpm
mhash-0.9.2-6.el5.x86_64.rpm
php-5.4.13.tar.bz2
libmcrypt-devel-2.5.7-5.el5.x86_64.rpm
mhash-devel-0.9.2-6.el5.x86_64.rpm
1. yum安裝rpm包
由於是下載的rpm包,所以在很大程度上可能本身系統版本和此包不兼容,所以要儘可能的下載與上述同樣的rpm包,以避免產生沒必要要的麻煩
# 進入此rpm的目錄下進行安裝
#
yum -y --nogpgcheck localinstall *.rpm
2. 源碼編譯安裝php
# tar -xf php-5.4.13.tar.bz2
# cd php-5.4.13
#
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml
--enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt
--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2
--enable-maintainer-zts
--with-apxs2=/usr/local/apache/bin/apxs 這個是把php安裝成爲apache的一個模塊
# make & make install
3. 複製配置文件,並修改httpd的配置文件
# cp
/root/php/php-5.4.13/php.ini-production
/etc/php.ini
# vim /etc/httpd/httpd.conf
DirectoryIndex index.html -------》DirectoryIndex index.html index.php
AddType application/x-httpd.php .php
AddType application/x-httpd.php.source .phps
# mv /usr/local/apache/htdocs/index.html
/usr/local/apache/htdocs/index.php
# vim /usr/local/apache/htdocs/index.php
喜歡php
0html
贈金筆mysql
加載中,請稍候......