Web服务器集群——部署LAMP平台

                                   第一 章部署LAMP平台

一、Apache网站服务基础
1、Apache简介
(1)Apache的起源
①它是针对之前出现的若干个Web服务器程序进行整合、完善后形成的软件
1995年发布1.0版本
httpd是Apache HTTP server的正式名称
(2)主要特点
①开放源代码
②跨平台应用
③支持各种Web编程语言
④模块化设计
⑤运行非常稳定
⑥良好的安全性

2、源码安装httpd服务器
(1)解包
(2)配置(PS:需安装GCC或GCC++
PS:关联软件
wget http://apache.freelamp.com/apr/apr-1.4.2.tar.gz  下载apr
./configure --prefix=/usr/local/apr
make
make  install
wget http://apache.freelamp.com/apr/apr-util-1.3.10.tar.gz
./configure --prefix=/usr/local/web/apr-util --with-apr=/usr/local/apr
make
make install
下载:http://sourceforge.net/projects/pcre
下载地址二:http://ftp.exim.llorien.org/pcre/
unzip -o pcre-8.10.zip
cd pcre-8.10
./configure --prefix=/usr/local/pcre
make
make install

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/web/apr-util/
prefix:指定安装目录
so:启用动态加载模块支持,使其具备进一步扩展功能的能力
rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护
charset-lite:启用字符集支持,支持使用各种字符集编码的网页
cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力
(3)安装
make
make install
(4)确认安装结果
bin:信封服务各种执行程序文件,包括主程序httpd及控制工具apachectl
conf:存放配置文件
htdocs:存放网页文档
logs:存放日志文件
modules:存放模块文件
cgi-bin:存放CGI程序文件
(5)优化执行路径
ln -s /usr/local/httpd/bin/* /usr/local/bin
(6)添加httpd系统服务
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
在httpd开头添加chkconfig支持chkconfig: 35 85 21
chkconfig --add httpd

二、httpd服务器的基本配置
1、部署过程
(1)确定网站名称、IP地址
(2)配置并启动httpd服务
①配置httpd服务
1)httpd.conf文件中修改ServerName www.luoxinli.top,用于设置网站名称
②启动服务
(2)部署网页文档
①将网页文档上传到htdocs目录下
(3)客户机访问网站
(4)查看访问记录
①tail /usr/local/httpd/logs/access_log
2、httpd.conf配置文件
Web服务器集群——部署LAMP平台_第1张图片

3、构建虚拟Web主机
(1)基于域名
①添加子配置文件
Web服务器集群——部署LAMP平台_第2张图片
②主配置文件中导入子配置文件
1)Include conf/extra/httpd-vhosts.conf
(2)基于IP地址或端口的虚拟主机
Web服务器集群——部署LAMP平台_第3张图片
Web服务器集群——部署LAMP平台_第4张图片
PS:基于端口时需要添加相应的端口监听并开启防火墙对应端口
4、MySQL服务
(1)MySQL的编译安装
①卸载mysql、mysql-server
安装ncurses及cmake(yum安装ncurses/ncurses-devel/cmake)
创建mysql用户及组
1)groupadd mysql
2)useradd -M -s /sbin/nologin -g mysql mysql
④配置
1)cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
2)DCMAKE_INSTALL_PREFIX:安装目录
3)DSYSCONFDIR:初始化参数目录
4)DDEFAULT_CHARSET:指定默认字符编码
5)DDEFAULT_COLLATION:指定默认字符集校对规则
6)DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码
⑤编译安装
1)make、make install
⑥数据库目录权限设置
1)chown -R mysql:mysql /usr/local/mysql
⑦建立配置文件
1)rm /etc/my.cnf
2)cp support-files/my-medium.cnf /etc/my.cnf(源码包目录内)
⑧初始化数据库
1)/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
⑨设置环境变量
1)echo “PATH=$PATH:/usr/local/mysql/bin”>>/etc/profile
2)source /etc/profile
⑩添加系统服务(编译文件目录内)
1)cp support-files/mysql.server /etc/rc.d/init.d/mysqld
2)chmod +x /etc/rc.d/init.d/mysqld
3)chkconfig --add mysqld
⑪启动服务
1)service mysqld start
(2)访问MySQL数据
①登录数据库
1)mysql -u root 或 mysql -u root -p
②执行MySQL操作语句
1)查看服务器中的库:SHOW DATABASES;
2)查看当前使用库在的表:USE mysql;SHOW TABLES;
退出:EXIT

五、构建PHP运行环境
1、编译安装PHP软件包
(1)安装扩展工具库
①zlib
②libxml2(yum安装libxml2及libxml2-devel

③libmcrypt(yum安装libmcrypt及libmcrypt-devel)
④mhash
⑤mcrypt

(2)编译安装PHP
./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql/ --with-config-file-path=/usr/local/php5 --enable-mbstring
prefix:安装目录
with-mcrypt:加载数据加密等扩展工具支持
with-apxs2:设置Apache HTTP Server提供的apxs模块支持程序的文件位置
with-mysql:设置mysql数据库服务程序安装位置
1)分离安装时:with-mysql=mysqldn(5.3以上版本)
with-config-file-path:设置PHP配置文件php.ini存放位置
enable-mbstring:启用多字节字符串功能
make、make install
2、设置LAMP组件环境
(1)php.ini配置调整
建立php.ini文件
复制安装文件目录中的php.ini-development或php.ini-production到安装目录,保存为php.ini
添加ZendGuardLoader优化模块(下载地址www.zend.com)
直接将ZendGuardLoader.so复制到安装目录的lib/php目录中
(2)http.conf配置调整
添加AddType application/x-httpd-php .php
修改DirectoryIndex index.php index.html
PHP安装时自动添加LoadModule php5_module modules/libphp5.so
3、测试LAMP协同工作
(1)编写index.php放置在网站目录中
phpinfo();
?>
②打开网页,能够看到PHP相关系统信息则表示安装成功
(2)修改index.php内容
$link=mysql_connect(‘localhost’,’root’,’’);
if($link) echo “数据库连接成功!”
mysql_close();
?>
②如果显示数据库连接成功则表示测试成功
PS:高版本PHP取消了mysql命令,使用mysqli命令进行替换

你可能感兴趣的:(云计算,Linux)