CentOS下基于Apache的PHP环境安装很简单,具体步骤如下:
安装一些基础库,一般编译软件的时候需要,个人习惯装完系统就安装一下
yum -y install gcc gcc-c++ openssl-devel zlib-devel pcre pcre-devel
安装Apache,apache在centos的软件源中名字叫httpd
yum -y install httpd
安装mysql mysql-server
yum -y install mysql mysql-server mysql-devel
查看php的版本信息
yum info php
CentOS的软件包中是5.3.3的,如果用该版本,可以直接:
yum -y install php
如果需要更高版本的话,先需要安装一个非官方的数据源:
rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm
然后我们搜索一下php相关的资源
yum search php
我们会看到很多php版本的东西,我们选择这个数据源里面的最新的php5的版本吧。
yum -y install php56w php56w-devel
php安装完了,接下来,我们安装一下php的一些常用的扩展。
yum -y install php56w-gd php56w-mbstring php56w-mysql php56w-pdo php56w-xml
到现在为止,我们其实已经把php、mysql、apache安装完了。
接下来我们启动一下apache和mysql,测试一下咱们的环境,配置的到底对不对。
service httpd start
可能会有这样的提示:
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
解决方法也很简单:
vi /etc/httpd/conf/httpd.conf
找到下面部分,把注释去掉,保存退出后,重启apache
#ServerName www.example.com:80
service httpd restart
apache默认的web目录是/var/www/html/,和我们用wamp时默认的www目录一样。
我们在该目录下创建一个index.html文件,写点内容,然后访问一下该文件,咱们的虚拟机ip是:192.168.0.200,
访问 http://192.168.0.200/index.html
如果出现一个默认页面,那么说明我们的apache装好的,接着我们尝试一下apache对php的处理,继续创建一个index.php文件,写点内容,然后访问该文件。
访问: http://192.168.0.200/index.php
如果我们能正常访问出内容,说明php也装好了
接下来测试一下mysql,先启动:
service mysqld start
运行mysql命令后,有个重要的安全提示
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
mysql默认安装完没有密码,所以才会有上面的提示,接下来我们给root帐号设置一个密码。
格式:mysqladmin -u用户名 [-p旧密码] password 新密码
mysqladmin -uroot password 123456
然后使用新密码重新登录即可
注意1:Mysql安装后,root账号是没有远程登录的权限,如果需要解决这个问题,可以尝试使用以下方法:
远程一定要记住开启防火墙的mysql端口(mysql默认端口是3306)
方法1:创建用户名为:myuser,密码为:mypassword的新用户,授权其可以从任何主机连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
方法2:创建用户名为:myuser,密码为:mypassword的新用户,授权其只能从192.168.1.2主机连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.2' IDENTIFIED BY 'mypassword’ WITH GRANT OPTION;
注意2:mysql远程连接时,可能会出现连接很慢的情况,一般这种情况是由于mysql默认情况下启动了dns反向解析引起的,只需要在mysql的配置中(linux:/etc/my.cnf)的mysqld项下增加如下内容即可:skip-name-resolve
好了,我们我们安装和测试完毕了,接下来我们在进一步,设置他们开机自动启动
chkconfig httpd on
chkconfig mysqld on
注:如果有兴趣,可以自己看一下chkconfig命令的其它更多用法。
另:centos6的官方软件源的软件版本较老,可以尝试安装别的软件源来解决这个问题: 如安装:webtatic的软件源
或者使用红帽的epel软件源
rpm -Uvh http://mirrors.aliyun.com/epel/6/i386/epel-release-6-8.noarch.rpm