CentOS7 搭建PHP服务器(网站)运行环境

CentOS7系统想安装下面这些软件需要先切换到root用户组,打开“终端”的时候默认用户组不是root用户,需要用命令:

su root

然后终端会提示你输入你的root用户密码,初学者会发现此时怎么按键盘都没用,以为出错了,这是Linux系统的坑爹之处,但凡在终端里输入密码就是什么显示和反应都没有。所以不用管,直接输入密码后按回车,此时就会发现切换到root用户组了,就可以执行下面的操作了。如果是非root用户组,使用“终端”只能实现如查询类的操作,可以理解为“只读”操作,而没有“写”的权限。

因为CentOS7的防火墙变了,所以我们要先打开80端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent

systemctl restart firewalld.service


但是有的主机商,可能会修改了模板,还继续使用老旧的iptables,如果你发现上述命令出现无法找到的情况,请使用以下命令来打开80端口

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

service iptables save

service iptables restart


然后记得,要update一下,不管我们要安装什么东西,都要记得,先进行该操作

yum update


二、安装apache

安装apache 其实很简单,一条命令就够了

yum install httpd httpd-devel

还有下面几条命令,我们也要注意一下,分别是用来设置apache的,主要是开机启动,请一定要记得设置。

systemctl status httpd.service #查看apache的状态

systemctl start httpd.service #启动apache

systemctl stop httpd.service #停止apache

systemctl restart httpd.service #重启apache

systemctl enable httpd.service #设置apache开机启动

 

然后开始安装mysql

 

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum install mysql-server


这时候的mysql是没密码的,用下面的命令修改mysql的密码

 

systemctl restart mysqld 

mysql_secure_installation

根据提示,修改密码应该是很简单的。

下面的几个命令,你应该记住

service mysqld status       # 检查MySQL的状态

systemctl start mysqld      # 启动 MySQL

systemctl stop mysqld       # 停止 MySQL

systemctl restart mysqld    # 重新启动 MySQL

systemctl enable mysqld     # 开机启动ySMySQL


注意:用上面的命令安装的是MySQL 5.6版本的MySQL,低于5.7版本的MySQL安装完毕后初始root密码为空,从5.7版本开始MySQL安装完后会生成一个随机密码用于第一次登录,第一次用随机密码登录进去后要马上修改root账号密码。

下面是MySQL 5.7的操作:


为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/log/mysqld.log。 
只有启动过一次mysql才可以查看临时密码

grep 'temporary password' /var/log/mysqld.log  查看临时密码


临时密码是"root@localhost:" 冒号后面的一串字符,不管这串字符看起来多么不像密码但是它就是临时密码。


使用默认的密码登陆

mysql -uroot -p

输入完上面的命令后终端会提示你输入临时密码,此时就输入上面获得的那个看起来特不像密码的临时密码。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123';

root123 就是新密码,但是MySQL 5.7的默认密码安全策略要求root密码为8位包含数字和字母大小写的密码组合,多了还不行,比如你输个10位或者12位包含数字和字母大小写的密码就不允许,通不过。


此时必须修改两个全局参数: 

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;


 
再修改密码的长度

mysql> set global validate_password_length=1;


但是到此处又可能出问题,如果安装的MySQL版本高于5.7会在这个地方继续报错,说找不到变量,更高版本的MySQL中validate_password_policy与validate_password_length这两变量的名字变了,

变成了validate_password.policy与validate_password.length

也就是最后一个"-"变成了"."。


再次执行修改密码就可以了

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123';

四、安装PHP

因为目前国内的php还是停留在php5,所以,我们还是从php5开始

开始安装PHP:

yum install php php-devel

yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc


然后到【/var/www/html】下面创建一个文件,名称为【test.php】,内容为:

<?php

phpinfo();

?>


到这一步想把测试的.php文件放进html文件夹会发现放不进去,右键属性查看文件夹的权限,会发现只有访问权限,也就是“只读”权限,现在就需要修改文件夹的权限了。

#chmod -R 777 /var/www

参数 -R 表示递归,/var/www及其之内的所有文件夹、文件都被改变了权限。

修改www目录下的文件夹权限,为可读可写,当然也可以只修改html文件夹的权限。然后把测试的.php文件丢进去,我放进去的是"index.php",在终端用命令重启apache,然后打开CentOS7系统自带的火狐浏览器在地址栏输入"localhost/index.php"如果运气够好没出问题,就会看到php的版本及一些信息,此时PHP运行环境搭建成功。

 

好了,假设你要死要活地非要安装php7

先删除之前的php

yum remove php* php-common   


然后开始安装php7

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm   --force --nodeps

yum install php70w    

如果出现【epel-release >= 7 is needed by webtatic-release-7-3.noarch】的错误,表示你需要安装epel-release,请先运行以下命令安装epel-release:

yum -y install epel-release


然后,还需要安装一些扩展:

yum install php70w-mysql php70w-gd php70w-imap php70w-ldap php70w-odbc php70w-pear php70w-xml php70w-xmlrpc php70w-mbstring php70w-devel

记得有事没事重启apache

安装好了,可以用以下的代码,查看PHP版本,或者访问我们刚才创建的那个test文件,请务必记得要重启apache

php -v 

参考资料:

https://www.138vps.com/jzjc/987.html

https://www.cnblogs.com/vae860514/p/8276916.html

https://blog.csdn.net/feiyst/article/details/88556260

https://www.cnblogs.com/shihuibei/p/9249155.html

https://blog.csdn.net/HaHa_Sir/article/details/80552663

https://blog.csdn.net/hui_1994/article/details/52166032#commentBox

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值