原文摘自:http://www.laozhe.net/articles/302.html
先来解释一下,什么是 LAMP。正如标题所言,LAMP 实际上就是 Linux、Apache、MySQL、PHP 四个名称的缩写,当然最后一个 “P” 还有其他说法是 Perl 或者 Python。不用多说了,本文讲解的就是 Linux、Apache、MySQL、PHP 这四个东西,所以就这样解释了。
自己很早就在做网站,最初玩的是 ASP,后来主要研究 .Net,也用 .Net 搞过类似的开发。但是自己最主要还是想把网站做起来,于是乎就将主要精力花在了网站运营上了,当然建站就选用了市面上成熟的一些 CMS 或者是博客程序。目前的 CMS 和博客程序实际上都可以融入到一起,因为其内容的表现形式上相当的接近,故选择哪一块来做,完全看自己的特长了。
由于 Linux 和 PHP 的免费,在国外是相当的流行。国内大部分主机都是 Windows 平台,而我学的 ASP 和 .Net 刚好能搭配运行起来。后来由于种种原因,我的网站都移民到了国外,而在国外找一个性价比好的 Windows 主机实在是件难事,不光语言上的阻碍,国外版权意识很好,所以很少有性价比好的 Windows 主机。我不得不转向了 Linux 平台。而且非常流行的 WordPress 吸引了我,故目前主要注意力就集中在 Linux 主机和 PHP 上。虽然自己对 PHP 基本不了解,呵呵。
虽然 Linux 平台上好的组件不止 Apache 一个,例如俄罗斯人开发的 Nginx,还有性能超强的 LiteSpeed 等等,这两者我都用过,前者以高效、资源占用低为特点,据说腾讯网就是基于此运行的,后者是以性能强大著称,同样据说这是 WordPress 官方推荐的用来运行 WordPress 最佳组件。但是呢,各种网上资料表明,虽然 Apache 性能、资源占用不如其他组件,但是 Apache 开发的目标就是以稳定为主。任何一个网站难道不是希望能够稳定运行?所以我还是选择学习 Apache 来作为网站的服务器环境。学会了一个,其他就能够举一反三了。
一般情况下,安装的都是最新的正式版,除非你有特殊需求,要安装指定的版本,本文暂不讨论。从最基础的开始,一点点完成一个可用的 Linux 主机。这里就开始介绍如何在 CentOS 6.0 上安装 LAMP 组件。经过如下语句安装,目前安装到的版本为:
- PHP:5.3.2
- Apache:2.2.15
- MySQL:5.1.52
一、安装 MySQL
首先来进行 MySQL 的安装。打开超级终端,输入:
[root@localhost ~]# yum install mysql mysql-server
安装完毕,让 MySQL 能够随系统自动启动:
[root@localhost ~]# chkconfig --levels 235 mysqld on [root@localhost ~]# /etc/init.d/mysqld start
设置 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]
直接回车即可。
二、安装 Apache 组件
由于 CentOS 已经封装了 Apache,直接运行安装:
[root@localhost ~]# yum install httpd
同样配置系统让 Apache 随系统启动:
[root@localhost ~]# chkconfig --levels 235 httpd on
配置完毕,启动 Apache:
[root@localhost ~]# /etc/init.d/httpd start
此时已经可以访问你的服务器,不出意外的话,能够看到 “Apache 2 Test Page powered by CentOS” 的测试页面。注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了。你只需要进入防火墙,将 “WWW” 对应的 “80” 端口打开即可。
关于防火墙中www的打开:
目前我知道两种:
一种是使用setup方法,即在终端中输入setup命令打开图形化文本设置界面,选择firewall项,选择customized,找到www项,打上*标记,退出。
另一种是使用iptables命令,网上有很多,未试验过,有机会再补上。
注意:在 CentOS 中 Apache 的默认根目录是 /var/www/html,配置文件 /etc/httpd/conf/httpd.conf。其他配置存储在 /etc/httpd/conf.d/ 目录。
三、安装 PHP
输入如下指令安装 PHP:
[root@localhost ~]# yum install php
需要重新启动 Apache 服务:
[root@localhost ~]# /etc/init.d/httpd restart
四、测试 PHP 相关信息
这步实际上可以省略,但是为了测试是否安装成功,你可以新建一个 PHP 页面进行测试,使用 vim 编辑器新建:
[root@localhost ~]# vi /var/www/html/info.php
按 “i” 键进行编辑,输入:
<?php phpinfo(); ?>
编辑完毕,按 “ESC” 键退出编辑模式,接着输入:
:wq
然后回车,即保存并退出。
此时你可以访问你的站点地址,例如 “http://192.168.1.2/info.php”,查看是否能看到相关的 PHP 信息。
看到这样的图,就说明 PHP 安装成功了。
五、将 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 工作正常了。
六、总结
到这里就结束了,本文阐述了在 CentOS 6.0 系统下 LAMP 组件(Apache+MySQL+PHP) 的详细安装步骤,可以让更多新手熟悉服务器配置环境。
但是到这里,还只是将环境配置完毕,很多东西还有欠缺,而且还是一些重要的问题,例如目录的权限配置问题,或者是管理上的问题,像建立 FTP 等。这些内容随后会慢慢谈到。