阿里云yum默认的版本太老旧,很多东西用着不顺畅,对于我等小白,网络信息的碎片化帮助能力有限。在此,我仅以自己的成功经验总结如下。
0、软件源
安装源
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
删除源
rpm -qa | grep 源名称 比如webtatic
rpm -e 上面搜索到的包即可
1、Nginx
安装
yum install nginx 默认安装的1.12以及绝大部分支持的模块,目测够用了,比较方便。
使用
配置目录 /etc/nginx/
日志目录 /var/log/
html目录 /usr/share/nginx/html
nginx -s start #启动
nginx -s reload #重启
nginx -s stop #停止
2、php 5.5 及 php-fpm
安装
安装 5.5
yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64
yum install php55w-fpm
安装 5.6
yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64
yum install php56w-fpm
安装 7.0 注:这个phpMyAdmin不好用
yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64
yum install php70w-fpm
添加常用扩展
yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel
使用
vim /etc/php-fpm.d/www.conf
user = nginx #修改用户为nginx
group = nginx #修改组为nginx
service php-fpm start #启动php-fpm
netstat -tunlp|grep 9000 #查看php-fpm启动状态
nginx配置
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include fastcgi_params;
}
3、mariaDB (mysql的一个分支版本)
CentOS7中已经不再支持mysql,就算安装了也用不了,无法启动服务,提示 Unit not found。
安装mysql的作者另起炉灶的开源版本:maria DB
(maria DB如同 MySQL 的影子版本,玛莉亚数据库是 MySQL 的一个分支版本(branch),而不是衍生版本(folk),提供的功能可和 MySQL 完全兼容)。
CentOS 7为什么放弃了MySQL,而改使用MariaDB?
安装
yum install -y mariadb-server
使用
systemctl start mariadb.service #启动
systemctl enable mariadb.service #添加到开机自动启动
数据库中默认存在一个用户名为空的账户,只要在本地,可以不用输入账号密码即可登录到MySQL中。而因为这个账户的存在,导致了使用密码登录无法正确登录。
解决方案:
只要通过root账户登录,然后将该账户删除即可:
mysql -u root # 以root账户登录MySQL
use mysql #选择mysql库
delete from user where User=''; #删除账号为空的行
flush privileges; #刷新权限
exit #退出mysql
#现在就可以使用新创建的账户和密码登录了
4、phpMyAdmin
安装
yum install phpMyAdmin
默认安装位置/usr/share/phpMyAdmin
使用
设置允许空秘密链接数据库
修改phpmyadmin的配置文件,设置可使用空密码连接数据库。
cd /usr/share/phpMyAdmin
vi libraries/config.default.php
找到 AllowNoPassword ,将false 改为 true 保存。
nginx增加配置
server {
listen 80;
server_name localhost;
root /usr/share/phpMyAdmin;
location ~ .*\.php5?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include fastcgi_params;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
}
location ~ .*\.(js|css)?${
expires 1h;
}
}
登录
使用root用户,密码为空登录系统。设定 root@localhost 的账户密码,重新修改修改phpmyadmin的配置文件,讲上面提到的AllowNoPassword 改为false。