LAMP的部署(一)
LAMP(Linux+Apache+Mysql+PHP)由linux操作系统、Apache Web服务、Mysql数据库和PHP(Python或Perl)脚本语言四种技术的开头字母组成。所有的组成产品均为开源软件,是国际上流行的架构,很多商业应用采取这个架构,和JAVA/J2EE架构相比,LAMP具有web资源丰富、轻量、快速开发等特点。微软的.NET架构相比,LAMP更具有通用、跨平台、高性能、低价格的优势,因此LAMP无论是性能、质量或者价格都是企业搭建网站的首选平台。
搭建LAMP平台步骤:
一、 准备安装包
Apache服务下载地址:http://down.51cto.com/data/300691
Mysql数据库下载地址:http://download.mysql.cn/
数据加密工具libmcrypt、 mhash 、 mcrypt下载地址:站点sf.net
PHP下载地址:http://download.pchome.net/development/sever/php/detail-7883.html
我将安装包下载之后通过挂载光盘的方式将其复制到/root目录下。
二、搭建Apache服务
1. 准备工作
防止端口、程序突出,建议将使用rpm方式安装的httpd以及相关的依赖包卸载。
建议先用rpm –q 查看一下有哪些包已安装
[[email protected] ~]# rpm –q httpd http-manual webalizer subversion mod_python mod_ssl mod_perl system-config-httpd php php-cli php-ldap php-common mysql dovecot
然后根据查看的结果卸载已安装的程序,如有依赖包的情况下,可在后面添加- -nodeps忽略掉就可以了
2. 源码编译及安装
- 将httpd软件解压到/usr/src目录下,再切换到展开的源码目录中。
- 配置
配置中选项含义如下:
--prefix:指定将httpd服务程序安装到哪个目录。
--enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力。
--enable-rewrite:启用网页地址重写功能,用于网站优化以及目录迁移维护。
--enable-charset-lite:启用字符集支持,以便于支持使用各种字符集编码的网页。
--enable-cgi:启用cgi脚本程序支持。便于扩展网站的应用访问能力。
- 编译并安装
3. 确认安装已完毕
在编译过程中指定安装目录为/usr/local/httpd,因此httpd服务的各种程序、模块、帮助文件等都会复制到此目录下。
/usr/local/apache(默认为/uar/localhttpd)子目录的用途介绍:
/usr/local/httpd/bin:存放httpd服务的各种执行程序文件,包括主程序httpd、服务控制程序、apachectl等。
/usr/local/httpd/conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf、增强配置子目录extra/等。
/usr/local/httpd/htdocs/:存放网页文档,包括默认首页文件index.html等。
/usr/local/httpd/logs:存放httpd服务的日志文件。
/usr/local/httpd/modules:存放httpd服务的各种模板文件。
/usr/local/httpd/cgi-bin:存放各种cgi程序文件。
4. 优化执行路径 ----方便执行命令
示例: httpd -v = /usr/local/apache/bin/httpd -v 查看程序版本
5. 添加httpd为系统服务
将httpd添加为系统服务,通过chkconfig管理。需要建立可控的服务版本。
成功执行以上操作之后,每次linux系统进入运行级别3、5时,httpd服务会自动启动运行。在日常维护中,也可直接使用apachectl工具来控制httpd服务,也可使用/etc/init.d/httpd来控制,以下我只举例了/etc/init.d/httpd
/usr/local/bin/apachectl=/etc/init.d/httpd
到这里,httpd服务准备工作我们已经做完了,现在,我们接下来该部署mysql数据库。
三、搭建Mysql数据库
1. 准备工作:
避免发生端口、程序冲突,建议现用rpm –q确认mysql-server、mysql是否已安装
通过查询,我们得知mysql-server、mysql没有安装。
2. 创建运行用户 ,释放源码包到/usr/src目录下
3. 配置
故障表现及解决方法:
4. 编译并安装
编译可能出现故障表现:
解决办法:挂载系统盘安装ncurses-devel软件包就可以了
可能遇到警告:
5. 安装后另外调整
(2)初始化数据库
为了能正常使用mysql数据库系统,需要以运行用户mysql的身份执行初始化任务,建立用户授权库、表,test测 试库等。初始化脚本mysql_install_db位于安装目录下的bin文件夹中。
除此之外,需要调整用于存放数据库内容的文件夹属性,便于mysql有权限对其进行读写操作。
(3)优化执行路径、程序库路径
为mysql数据库的各种执行程序添加符号链接,便于使用。
建议将mysql的库文件、头文件添加符号链接,便于安装其他的用到这些文件的软件包时能自动搜索。
(4)添加系统服务
同样,到这里mysql数据库的准备工作以及做好,接下来安装PHP
四、PHP的安装
1. 准备工作
避免发生程序冲突,先将rpm方式安装的php及相关依赖包,若有则卸载。
2. 安装扩展工具库
实际企业应用中,一部分基于PHP开发的Web应用系统需要额外的扩展工具。安装数据加密工具libmcrypt、mhash、mcrypt等。
安装libmcrypt
安装mhash
安装mcrypt
配置报错:(提示未安装libmcrypt,其实刚刚已经安装完毕)
解决办法:
3. 解压PHP到/usr/src目录下,并进行相关配置
模块详解:
- -with-mcrypt:加载数据加密等扩展工具支持。
- --with-apxs2:设置“Apache HTTP Server”提供的apxs模块支持程序文件设置。
- --with-mysql:设置MySQL数据库服务程序的安装位置。
- --with-config-file-path:设置PHP的配置文件php.ini将要存放的位置。
- --enable-mbstring:启用多字节字符串功能,便于支持中文等代码。
4. 编译并安装PHP
配置报错:(提示xml-config未安装)
解决办法:因为相关依赖包较多,建议使用yum安装xml*