准备前的工作:
1.修改selinux配置文件(/etc/sysconfig/selinux) 关闭防火墙
(1)把SELINUX=enforcing注释掉
(2)并添加SELINUX=disabled
2.修改防火墙配置文件(/etc/sysconfig/iptables) 开放端口号
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
打开连个常用的端口
如今,Linux在Web应用越来越广,许多企业都采用Linux来搭建Web服务器,这样即节省了购买正版软件的费用,而且还能够提高服务器的安全性。
之前我们介绍了如何在openSUSE 12.1下搭建Web服务器,里面详细介绍了在openSUSE 12.1下搭建服务器的方法,其实除了Red Hat和openSUSE,CentOS也是人们经常用到的搭建Web服务器的Linux版本。
CentOS是企业Linux发行版领头羊Red Hat Enterprise Linux(以下称之为RHEL)的再编译版本,RHEL是很多企业采用的linux发行版本,需要向RedHat付费才可以使用,并能得到付过费用的服务和技术支持和版本升级。这个CentOS可以像REHL一样的构筑linux系统环境,但不需要向RedHat付任何的费用,同样也得不到任何有偿技术支持和升级服务。
由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。所以这里给大家介绍一下如何在CentOS6.2下与Apache 2、PHP5、MySQL搭建Web服务器,希望对一些人有帮助。
1.开始说明
本教程中使用的IP地址是192.168.0.100,主机名称为Server1.example.com 这些设置可能会有所不同,你需要根据不同情况进行修改。
CentOS 6.2下安装MySQL
2.开始安装MySQL5
首先我们应该先用下面的命令安装MySQL:
yum install mysql mysql-server
然后我们需要创建MySQL系统的启动键链接启动MySQL服务器,这样以便于MySQL在系统启动时自动启动
chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start
为MySQL root帐户设置密码:
mysql_secure_installation
会出现下面的一系列提示:
root@server1 ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user. If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] <-- ENTER
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] <-- ENTER
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] <-- ENTER
... Success!
By default, MySQL comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] <-- ENTER
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <-- ENTER
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
[root@server1 ~]#
CentOS 6.2下安装Apache
3.安装阿帕奇2
Apache2的是作为一个CentOS的软件包,因此我们可以直接用下面命令安装它:
yum install httpd
现在配置系统在引导时启动Apache
chkconfig --levels 235 httpd on
并启动Apache
/etc/init.d/httpd start
现在,您的浏览器到http://192.168.0.100,你应该看到Apache2的测试页:
Apache 2测试网页
Apache的默认文档根目录是在CentOS上的/var/www/html 目录 ,配置文件是/etc/httpd/conf/httpd.conf。配置存储在的/etc/httpd/conf.d/目录。
4.安装PHP5
我们可以用下面的命令来安装PHP5
yum install php
安装完需要重启
/etc/init.d/httpd restart
CentOS 6.2下安装PHP5
5.我们可以安装PHP5和Apache的PHP5的模块如下:
默认网站的文件根目录是在/srv/www/html中。现在我们将在该目录中创建一个小型PHP文件(info.php的)在浏览器中调用它。该文件将显示很多关于我们的PHP安装,如安装的PHP版本和有用的一些细节。
vi /var/www/html/info.php
修改细节
现在,我们可以用浏览器访问例如http://192.168.0.100/info.php文件
PHP页面
正如你所看到的,PHP5的工作,它通过Apache 2.0的处理程序,在服务器API线。如果你继续向下滚动,你会看到所有在PHP5中已经启用的模块。MySQL是没有列出,这意味着我们没有在PHP5支持MySQL。
6.PHP5获得MySOL的支持
让PHP在MySQL中获得支持,我们可以安装的php-mysql软件包。安装一些其他的PHP5模块,以及您可能需要的应用程序,这是一个好主意:
yum search php
还安装需要安装的
yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc
现在重新启动Apache2的:
/etc/init.d/httpd restart
现在,重载http://192.168.0.100/info.php在您的浏览器,并再次向下滚动到模块部分。现在,你应该找到许多新的模块,包括MySQL模块:
MySQL页面
CentOS 6.2下安装phpMyAdmin
7.安装phpMyAdmin
phpMyAdmin是一个网络接口,通过它可以管理你的MySQL数据库。
首先,我们使CentOS系统RPMForge软件库的phpMyAdmin,而不是官方的CentOS 6.2库:
所以需要导入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
配置
下一步,我们从HTTP改变的phpMyAdmin的cookie来身份验证:
vi /usr/share/phpmyadmin/config.inc.php
重启阿帕奇
/etc/init.d/httpd restart
在地址栏输入http://192.168.0.100/phpMyAdmin/:你就可以访问phpMyAdmin了。
phpmyadmin页面
CentOS可以得到RHEL的所有功能,甚至是更好的软件。但CentOS并不向用户提供商业支持,当然也不负上任何商业责任。
如果你要将你的RHEL转到CentOS上,因为不希望为RHEL升级而付费。当然,你必须有丰富linux使用经验,因此RHEL的商业技术支持对你来说并不重要。但如果你是单纯的业务型企业,那么还是建议你选购RHEL软件并购买相应服务。这样可以节省你的IT管理费用,并可得到专业服务。
由此,对于CentOS 6.3下搭建Web服务器简单的介绍的了解,以及与Apache 2、PHP5、MySQL进行更加紧密的结合使用,相信企业用户更能从CentOS系统上获取商业上真正应用需求。