<--目录-->
1)RPM方式构建LAMP平台
2)源码编译构建LAMP平台
3)LAMP配置解析
一、RPM方式构建LAMP平台
【服务器配置(192.168.2.1)】
1) 安装各组件
#yum -y install httpd mysql-server mysql php php-mysql php-pdo php-mbstring
启动各组件,php组件不需启动,以模块方式被http加载
#servcie httpd start
#service mysqld start
#chkconfig httpd on
#chkcofig mysqld on
2) 编写网页,测试PHP解析
#cat /var/www/html/test1.php
phpinfo();//输出PHP环境相关信息
?>
3) 编写网页,测试数据库连接
#cat /var/www/html/test2.php
$link=mysql_connect('localhost','test',''); //连数据库
if($link)echo "恭喜你,成功了!!"; //成功时的提示
mysql_close(); //关数据库
?>
【客户端测试(192.168.2.2)】
http://192.168.2.1/test1.php
http://192.168.2.1/test2.php
二、源码编译构建LAMP平台
【准备工作】
1) 安装开发工具开发库
#yum -y instsal gcc gcc-c++ 或 yum -y groupinstall "开发工具" "开发库"
2) 卸载移除冲突软件包
#yum -y remove httpd mysql-server mysql php php-mysql php-pdo php-mbstring
#rm -rf /var/lib/mysql/ /etc/my.cnf/ //删除数据库主配置文件和库文件
【编译安装HTTPD】
1) 解压安装包
#cd
#tar -zxf httpd-2.2.25
#cd httpd-2.2.25
#yum -y install openssl-devel
2) 配置、编译、安装
#./configure --prefix=/usr/local/httpd \
--enable-so --enable-rewrite \
--enable-cgi --enable--ssl \
--enable-charset-lite \
--enable-suexec --with-suexec-caller=daemon \
--with-suexec-docroot=/usr/local/httpd/htdocs
3) 添加为系统服务
#cp /usr/local/httpd/bin/apachectl /etc/init.d/myhttpd
#vi /etc/init.d/myhttpd
#!/bin/sh
#chkconfig:35 85 15
#description:Apache is a World Wide Web Server
...
#chkconfig --add myhttpd
#chkconfig --list myhttpd
4)启动服务
#service myhttpd start
【编译安装MySQL】
1)添加执行用户
#useradd -M -u 49 -s /sbin/nologin mysql
2)安装依赖包
#yum -y install ncurses-devel libtermcap-devel
3)解包、配置、编译及安装
#cd
#tar zxf mysql-5.1.62.tar.gz
#cd mysql-5.1.62
#./configure \
--prefix=/usr/local/mysql --with-charset=utf8 \
--with-collation=utf8_general_ci \
--with-extra-charsets=gbk,gb2312
#make && make install
4)初始化设置
#cd support-files
#cp my-medium.cnf /etc/my.cnf//复制样本配置文件
#cd /usr/local/mysql/bin/
#./mysql_install_db --user=mysql
5)权限调整及执行优化
#chown -R root:mysql /usr/local/mysql/
#chown -R mysql /usr/local/mysql/var/ //库路径
6)使用mysql有权写库
#ln -s /usr/local/mysql/bin/* /usr/local/bin/
#ln -s /usr/local/mysql/lib/mysql/* /usr/lib64/
#ln -s /usr/local/mysql/include/mysql/* /usr/include/
7)添加为系统服务
#cd ~/mysql-5.1.62/support-files/
#cp mysql.server /etc/init.d/mysqld
#chmod +x /etc/rc.d/init.d/mysqld
#chkconfig --add mysqld
8)启动服务
#service mysqld start
【编译安装PHP】
1)安装依赖包
#yum -y install libxml2-devel
2)解包、配置、编译、安装
#cd
#tar zxf php-5.4.19.tar.gz
#cd php-5.4.19
#./configure \
--prefix=/usr/local/php --enable-mbstring --enable-sockets \
--with-apxs2=/usr/local/httpd/bin/apxs
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/php
#make && make install
3)复制配置文件
#cp php.ini-development /usr/local/php/php.ini
【LAMP协作配置】
1)调整httpd配置,以便支持php网页
#vi /usr/local/httpd/conf/httpd.conf
...
54 LoadModule php5_module modules/libphp5.so//有此行,证明PHP安装成功
...
168 DirectoryIndexindex.html index.php//添加PHP首页
...
311 AddType application/x-httpd-php .php//识别PHP网页类型
...
2)重启服务
#service myhttpd restart
【LAMP协作测试】
1) 编写网页,测试PHP解析
#cat /usr/local/httpd/htdocs/test1.php
phpinfo();//输出PHP环境相关信息
?>
2) 编写网页,测试数据库连接
#cat /usr/local/httpd/htdocs/test2.php
$link=mysql_connect('localhost','test',''); //连数据库
if($link)echo "恭喜你,成功了!!"; //成功时的提示
mysql_close(); //关数据库
?>
3)重启服务
#service myhttpd restart
4)浏览器测试
http://192.168.1.10/test1.php
http://192.168.1.10/test2.php
三、部署PHP网站应用
1、准备工作(数据库的准备)
# mysql -u root
> create database bbsdb;
> grant all on bbsdb.* to 'bbs'@'localhost' identified by 'admin123';
> quit
2、解包
cd
#unzip Discuz_X3.0_SC_UTF8.zip -d DiscuzX3
#ls DiscuzX3
3、部署
#cp -r Discuz_X3/upload/ /usr/local/httpd/htdocs/bbs
#cd /usr/local/httpd/htdocs/bbs/
#chown -R daemon config/ data/ uc_server/ template/ uc_client/
4、从浏览器中执行安装
http://192.168.1.10/bbs/install/
5、访问论坛
http://192.168.1.10/bbs/
6、善后工作(转移install/目录,避免重复安装,改名,限制访问权限)
#mv install/ install.lock
#chmod 600 install.locak
7、管理论坛
http://192.168.1.10/bbs/admin.php
三、LAMP配置解析
什么是LAMP
-Linux --Linux、Apache、Mysql、PHP/Perl/Python
- 目前最为成熟的一种企业网站应用模式
- 提供动态Web应用与开发环境
LAMP架构的优势
- 成本低廉、可定制、易于开发
- 方便易用、安全、稳定
RPM/YUM安装
- 速度快、方便、
- 适用于简单Web环境
- 可定制性差、不够灵活
源代码编译安装
- 速度慢、配置麻烦
- 适用于需求复杂的Web环境(邮件、论坛等)
- 可定制性强、非常灵活
LAMP编译安装注意事项
- 先卸载已安装的RPM版本,避免冲突
- 编译安装顺序:L->A->M->->P
1)编译安装httpd
.关健在于配置—./configure
- 通过./configure --help查看详细说明
- 根据实际需要选择配置参数
编译安装httpd
httpd配置参数用途
- --prefix= : 指定安装目录
- --enable-so : 支持动态加载模块
- --enable-rewrite : 支持网站地址重写
- --enable-cgi : 支持CGI程序脚本
- --enable-ssl : 支持SSL加密
- --enable-charsets-lite :支持多种语言编码
RPM安装VS源码包安装(http)
文件路径等相关差异
类型RPM安装源码包安装
ServerRoot /etc/httpd/ /usr/local/httpd/
DocumentRoot /var/www/html/ /usr/local/httpd/htdocs/
主配置文件 /etc/httpd/conf/ /usr/local/httpd/conf/
Include配置 /etc/httpd/conf.d/ /usr/local/httpd/conf/extra/
日志位置 /var/log/httpd 自定义
运行用户/组 apache daemon
2)编译安装MySQL
基本实现过程
- 1、添加运行用户
- 2、解包、配置、编译及安装
- 3、初始化设置
- 4、权限调整及执行优化
- 5、添加为系统服务
MySQL配置参数用途:
--prefix= : 指定用户安装目录
--with-charset=utf8 : 指定默认字符集
--with-collation=utf8_general_ci : 指定默认的校对规则集
--with-extra-charsets=gbk,gb2312 : 设置支持的其他字符集
3)编译安装PHP
关键配置参数
--prefix= :指定安装目录
--enable-mbstring :支持多字节字符
--with-apxs2 : 指定httpd的模块工具位置
--with-mysql :指定mysql的安装位置
--enable-sockets : 启用套接字支持
--with-config-file-path= : 指定配置路径
调整php.ini配置(可选)
#/vi /usr/local/php/php.ini
...
default_charset="UTF-8" //默认字符集
file_uploads=On //允许上传
upload_max_filesize=4M //可上传的最大文件
post_max_size=8M //最大POST提交的容量
LAMP协作及测试
A+M+P如何一起工作?
- 安装php时,将其与httpd、mysql关联
- 修改httpd配置文件,添加php模块的调用
- 当用户访问httpd时,启用php模块来解析动态网页,连接Mysqld数据库
Discuz!X 论坛系统
- Crossday Discuz! Board论坛系统
- 利用PHP+MySQL等构建的高效论坛程序
- 可免费获得源代码进行学习/测试
- 用于商业目的时需要购买其授权许可
部署Discuz!X 论坛
1、基本准备工作
- 准备可用的LAMP服务器
- 确定论坛服务器的域名、IP地址等信息
- 建立bbs论坛的数据库及授权用户
2、下载并确认程序代码
- 官方网站:http://www.discuz.net/
安装Discuz! X 论坛系统
访问新部署的论坛、注册用户、发贴
修改论坛名称、版块