共计 7341 个字符,预计需要花费 19 分钟才能阅读完成。
一、目标
目标是安装 Web Application 可扩展的运营环境,所以系统由多个角色组成:LB Server、Web Server、APP Server、DB Server。
由于本文的主旨是 LAMP(Linux、Apache、MySQL、php)安装,所以这里仅就 Web Server 与 DB Server 的安装部署作说明。
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
RedHat 5.4 下 Web 服务器架构之源码构建 LAMP 环境及应用 PHPWind http://www.linuxidc.com/Linux/2012-10/72484p2.htm
LAMP 源码环境搭建 WEB 服务器 Linux+Apache+MySQL+PHP http://www.linuxidc.com/Linux/2013-05/84882.htm
二、软件版本
Linux:CentOS6.3
Apache:2.2
Mysql:5.1/5.5(升级需求)
PHP:5.3/5.2(老代码运行需求)
就 Linux 的发行版本来说,会遇到 Linux 发行版本与需要运行的软件版本不一致的问题,经常花费相当多的时间做安装、编译与配置。
这里是一些经验的总结:
- 我们在配置 Server 上走了弯路,认为 Apache,php,mysql 要分开安装在不同 Server 上。其实,完全没有必要,安装但关闭服务即可与配置目标一致,又可在出问题时开启进行本地测试。
- 在 Mysql 版本上也纠结了很长时间。应该一开始就用最易用的方式搭建 App, 在保证应用没有问题的情况下(也就是我们熟悉 App 应用配置后),再对系统进行版本选择、配置、优化
三、安装流程
1、DB Server 安装
Mysql 版本:5.1
1.1、安装 Mysql
首先来进行 MySQL 的安装。打开超级终端,输入:
[root@localhost ~] # yum install mysql mysql-server |
安装完毕,让 MySQL 能够随系统自动启动:
[root@localhost ~] # chkconfig --levels 235 mysqld on<br><span>[root@localhost ~]# /etc/init.d/mysqld start</span> |
设置 MySQL 数据 root 账户的密码:
[root@localhost ~] # mysql_secure_installation |
当出现如下提示时候直接按回车、输入新密码、进行设置确认:
Enter current password for root Set root password? [Y / n] New password: Remove anonymous users? [Y / n] Disallow root login remotely? [Y / n] Remove test database and access to it? [Y / n] Reload privilege tables now? [Y / n] |
至此 MySql 安装完成。
1.2、安装 Apache
由于 CentOS 已经封装了 Apache,直接运行安装:
[root@localhost ~] # yum install httpd |
同样配置系统让 Apache 随系统启动:
[root@localhost ~]# chkconfig --levels 235 httpd on
[root@localhost ~]# /etc/init.d/httpd start
此时已经可以访问你的服务器,不出意外的话,能够看到“Apache 2 Test Page powered by CentOS”的测试页面。如下图所示
注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了。
处理方式:
- 你只需要进入防火墙,将“WWW”对应的“80”端口打开即可。
- 执行命令:
[root@localhost ~]#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 80-j ACCEPT
注意:在 CentOS 中 Apache 的默认根目录是 /var/www/html,配置文件 /etc/httpd/conf/httpd.conf。其他配置存储在 /etc/httpd/conf.d/ 目录。
1.3、安装 PHP
输入如下指令安装 PHP:
[root@localhost ~]# yum install php
需要重新启动 Apache 服务:
[root@localhost ~]# /etc/init.d/httpd restart
1.4、测试 PHP 相关信息
这步实际上可以省略,但是为了测试是否安装成功,你可以新建一个 PHP 页面进行测试,使用 vim 编辑器新建:
[root@localhost ~]# vi /var/www/html/info.php
按“i”键进行编辑,输入:
<?php
phpinfo();
?>
此时你可以访问你的站点地址,例如“http://localhost/info.php”,查看是否能看到相关的 PHP 信息
看到这样的图,就说明 PHP 安装成功了。
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-04/100484p2.htm
1.5、将 PHP 模块和 MySQL 模块关联起来
还需要将 PHP 和 MySQL 关联起来,才能正常工作。搜索模块:
[root@localhost ~]# yum search php
安装相关模块:
[root@localhost ~]# yum install php
-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
需要重启 Apache 模块才能生效:
[root@localhost ~]# /etc/init.d/httpd restart
再次刷新刚才建立的“info.php”页面,往下拉找到相关 MySQL 模块,看是否检测到相关信息。
如果看到如上图相关信息,则说明 MySQL 工作正常了。
1.6、安装 phpMyAdmin 管理数据库
这步不是必须的,但对于系统的调试差错很有帮助,建议安装。
phpMyAdmin 是一个 Web 界面,通过它可以管理你的 MySQL 数据库。
首先,我们使我们的 CentOS 系统的 RPMForge 软件库 phpMyAdmin 是不是官方的 CentOS 6.0 库:
导入 rpmforge 的 GPG 密钥:
rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
x86_64 系统安装命令:
yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
i386 系统安装命令:
yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm
现在可以安装 phpMyAdmin 如下:
yum install phpmyadmin
现在,我们配置 phpMyAdmin。改变 Apache 的配置,使 phpMyAdmin 连接,而不仅仅是从 localhost(注释掉允许):
vi /etc/httpd/conf.d/phpmyadmin.conf
修改配置文件内容如下:
#
# Web application to manage MySQL
#
#
# Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
#
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin
下一步,我们改变在 phpMyAdmin 的身份验证 cookie,HTTP:
vi /usr/share/phpmyadmin/config.inc.php
文件中修改内容如下:
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] =‘http’;
[...]
重新启动 Apache:
/etc/init.d/httpd restart
之后,您可以根据访问 phpMyAdmin http://localhost/phpmyadmin/ 管理数据库。
至此,DB Server 安装成功,这时可用关闭 Apache 提高 Mysql 在系统资源的使用率:
[root@localhost ~]# chkconfig --levels 235 httpd off
[root@localhost ~]# /etc/init.d/httpd stop
2、Web Server 安装
Apache 版本:2.2
PHP 版本:5.2
2.1、安装 MySql
如 1.1 安装方式完全相同
2.2、安装 Apache
如 1.2 安装方式完全相同
2.3、安装 PHP
由于我们需要安装 PHP5.2,而 CentOS6.3 提供的缺省安装方式的 PHP 是 5.3 版本(PHP5.3 与 PHP5.2 有较大的更新,不少之前的应用程序在 PHP5.3 上不可用)
所以我们需要使用第三方包含 PHP5.2 的 RPM 的 YUM repo。Atomic YUM repo 有两个 PHP5.2 和 5.3 的 RPM。在启用 Atomic YUM repo 后,排除 PHP5.3 的 RPM,然后再安装 PHP5.2 的 RPM。
启用Atomicorp repo
wget -q -O - http://www.atomicorp.com/installers/atomic | sh
排除 PHP5.3 的RPM
vi /etc/yum.conf
在配置文件中增加如下内容
exclude=php-*5.3*
安装 PHP5.2
arch=$(uname -m)
yum install php-common.$arch php-gd.$arch php-soap.$arch php-cli.$arch php-pdo.$arch php-mhash.$arch php-bcmath.$arch php-imap.$arch php-mcrypt.$arch php-xml.$arch php-devel.$arch php.$arch php-mysql.$arch php-mbstring.$arch php-xmlrpc.$arch -y
如果顺利,就完成 PHP5.2 的安装了。
当然这里有个问题,如果 Atomic repo 修改对应 PHP 版本 RPM 该怎么办?一个完整的解决方案就是在本地建立 YUM repo 库(具体方法见如何建立本地 yum repo 库)
2.5、将 PHP 模块和 MySql 模块关联起来,和 phpmyadmin 安装
与 1.5、1.6 完全一致即可
2.6、关闭 Mysql 服务
[root@localhost ~]# chkconfig --levels 235 mysqld off
[root@localhost ~]# /etc/init.d/mysqld stop
四、小结
至此,WebServer 与 DBServer 的 LAMP 环境均已建设完成。
当然,到这一步只是完成软件安装,之后 Apache、php、mysql 均需要再配置来满足应用的需要,提供更好的效能。这些将在之后的文档中进行说明。
更多 CentOS 相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
一、目标
目标是安装 Web Application 可扩展的运营环境,所以系统由多个角色组成:LB Server、Web Server、APP Server、DB Server。
由于本文的主旨是 LAMP(Linux、Apache、MySQL、php)安装,所以这里仅就 Web Server 与 DB Server 的安装部署作说明。
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
RedHat 5.4 下 Web 服务器架构之源码构建 LAMP 环境及应用 PHPWind http://www.linuxidc.com/Linux/2012-10/72484p2.htm
LAMP 源码环境搭建 WEB 服务器 Linux+Apache+MySQL+PHP http://www.linuxidc.com/Linux/2013-05/84882.htm
二、软件版本
Linux:CentOS6.3
Apache:2.2
Mysql:5.1/5.5(升级需求)
PHP:5.3/5.2(老代码运行需求)
就 Linux 的发行版本来说,会遇到 Linux 发行版本与需要运行的软件版本不一致的问题,经常花费相当多的时间做安装、编译与配置。
这里是一些经验的总结:
- 我们在配置 Server 上走了弯路,认为 Apache,php,mysql 要分开安装在不同 Server 上。其实,完全没有必要,安装但关闭服务即可与配置目标一致,又可在出问题时开启进行本地测试。
- 在 Mysql 版本上也纠结了很长时间。应该一开始就用最易用的方式搭建 App, 在保证应用没有问题的情况下(也就是我们熟悉 App 应用配置后),再对系统进行版本选择、配置、优化
三、安装流程
1、DB Server 安装
Mysql 版本:5.1
1.1、安装 Mysql
首先来进行 MySQL 的安装。打开超级终端,输入:
[root@localhost ~] # yum install mysql mysql-server |
安装完毕,让 MySQL 能够随系统自动启动:
[root@localhost ~] # chkconfig --levels 235 mysqld on<br><span>[root@localhost ~]# /etc/init.d/mysqld start</span> |
设置 MySQL 数据 root 账户的密码:
[root@localhost ~] # mysql_secure_installation |
当出现如下提示时候直接按回车、输入新密码、进行设置确认:
Enter current password for root Set root password? [Y / n] New password: Remove anonymous users? [Y / n] Disallow root login remotely? [Y / n] Remove test database and access to it? [Y / n] Reload privilege tables now? [Y / n] |
至此 MySql 安装完成。
1.2、安装 Apache
由于 CentOS 已经封装了 Apache,直接运行安装:
[root@localhost ~] # yum install httpd |
同样配置系统让 Apache 随系统启动:
[root@localhost ~]# chkconfig --levels 235 httpd on
[root@localhost ~]# /etc/init.d/httpd start
此时已经可以访问你的服务器,不出意外的话,能够看到“Apache 2 Test Page powered by CentOS”的测试页面。如下图所示
注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了。
处理方式:
- 你只需要进入防火墙,将“WWW”对应的“80”端口打开即可。
- 执行命令:
[root@localhost ~]#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 80-j ACCEPT
注意:在 CentOS 中 Apache 的默认根目录是 /var/www/html,配置文件 /etc/httpd/conf/httpd.conf。其他配置存储在 /etc/httpd/conf.d/ 目录。
1.3、安装 PHP
输入如下指令安装 PHP:
[root@localhost ~]# yum install php
需要重新启动 Apache 服务:
[root@localhost ~]# /etc/init.d/httpd restart
1.4、测试 PHP 相关信息
这步实际上可以省略,但是为了测试是否安装成功,你可以新建一个 PHP 页面进行测试,使用 vim 编辑器新建:
[root@localhost ~]# vi /var/www/html/info.php
按“i”键进行编辑,输入:
<?php
phpinfo();
?>
此时你可以访问你的站点地址,例如“http://localhost/info.php”,查看是否能看到相关的 PHP 信息
看到这样的图,就说明 PHP 安装成功了。
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-04/100484p2.htm