什么是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"
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
--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
--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.
loading.
意思是不能够动态的进行加载mpm模块,首先我来解释以下什么叫做mpm
MPM(多处理模块)
Apache HTTP 服务器被设计为一个功能强大,并且灵活的 web 服务器,
可以在很多平台与环境中工作。不同平台和不同的环境往往需要不同 的特性,或可能以不同的方式实现相同的特性最有效率。Apache
httpd 通过模块化的设计来适应各种环境。这种设计允许网站管理员通过在
编译时或运行时,选择哪些模块将会加载在服务器中,来选择服务器特性
可以在很多平台与环境中工作。不同平台和不同的环境往往需要不同 的特性,或可能以不同的方式实现相同的特性最有效率。Apache
httpd 通过模块化的设计来适应各种环境。这种设计允许网站管理员通过在
编译时或运行时,选择哪些模块将会加载在服务器中,来选择服务器特性
Apache
HTTP模块
HTTP模块
1. prefork
模型
模型
prefork模型是一个进程响应一个请求的模式
2.
worker模型
worker模型
worker模型一个线程响应一个请求的模式,
但是因为Linux系统设计原因,对于线程的工作方式并不是特别的支持,因此一般而言此模式下的工作并没有想象中的那么高效
但是因为Linux系统设计原因,对于线程的工作方式并不是特别的支持,因此一般而言此模式下的工作并没有想象中的那么高效
3.
event模型
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
--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
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
mysql
# useradd -r -g 306 -u 306
mysql
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
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/
-C /usr/local/
#
cd mysql-5.5.55-linux2.6-x86_64
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
/usr/local/mysql
# chown -R mysql:mysql /usr/loca/mysql/*
# ./scripts/mysql_install_db
--datadir=/mydata/data/ --user=mysql
--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
/etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld on
<2>头文件创建链接
# ln -sv /usr/local/mysql/include
/usr/include/mysql
/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
/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
*.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-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的一个模块
这个是把php安装成为apache的一个模块
# make & make install
3. 复制配置文件,并修改httpd的配置文件
# cp /root/php/php-5.4.13/php.ini-production
/etc/php.ini
/etc/php.ini
# vim /etc/httpd/httpd.conf
DirectoryIndex index.html -------》DirectoryIndex index.html
index.php
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
/usr/local/apache/htdocs/index.php
# vim /usr/local/apache/htdocs/index.php
分享:
喜欢
0
赠金笔
-->
0
赠金笔