LAMP架構的搭建

什麼是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 =  

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 
變換分區類型
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

0html

閱讀 評論 收藏 轉載 喜歡 打印 舉報
已投稿到:
  • 評論加載中,請稍候...
發評論

       sql

    發評論

    以上網友發言只表明其我的觀點,不表明新浪網的觀點或立場。apache

    相關文章
    相關標籤/搜索