CentOS7下nginx+MySQL5.7+PHP7开发环境搭建

在阿里云买了一服务器,用来做自己的测试和搭建博客,以及私有项目的版本仓库(github毕竟是任何人都可以下载的,不适合私有项目)。利用午休时间把这台服务器环境的搭建过程分享出来,希望可以帮到有需要的朋友。

下面正式开始

一、安装Nginx

添加CentOS 7 Nginx yum资源库,打开终端,使用以下命令:

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

然后输入 "yum list nginx" 查看可安装的nginx软件包.
安装nginx

yum -y install nginx    # 安装的nginx软件包
nginx                   # 启动nginx
curl 127.0.0.1          # 是否能访问到欢迎页面
nginx -s stop           # 暂时关闭nginx服务

开机启动Nginx

systemctl enable nginx.service

安装完成后,Nginx默认的目录信息如下:
/usr/share/nginx/html # 网站文件存放默认目录
/etc/nginx/conf.d/default.conf # 网站默认站点配置
/etc/nginx/conf.d/ # 自定义Nginx站点配置文件存放目录
/etc/nginx/nginx.conf # Nginx全局配置

添加www用户组和用户:

groupadd www
useradd -d /home/wwwroot -g www -s /sbin/nologin www   #我把站点文件都放在/home/wwwroot下
passwd www          # 设置www用户密码('www'),以后ftp登录用

修改Nginx用户,编辑 /etc/nginx/nginx.conf ,修改如下配置:

user www www;

修改nginx目录所有者(非常重要):

chown -R www:www /var/lib/nginx/

修改默认站点目录:

vi /etc/nginx/conf.d/default.conf

移动默认站点:

mv /usr/share/nginx/html /home/wwwroot/webs/default    # ftp不能上传到家目录,所以这里把站点都挂在子目录webs下
chmod -R 755 /home/wwwroot/

关闭防火墙(一般改用iptables防火墙,这里暂不讨论):

systemctl disable firewalld  # 永久禁用
nginx -c /etc/nginx/nginx.conf      # Nginx启动
curl 127.0.0.1          # 看看是否任然能够访问,能访问则上面的配置正确

二. 安装MySQL 5.7版本

添加MySQL5.7到YUM源,并安装

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
yum repolist enabled | grep mysql   # 查看可用的安装版本
yum -y install mysql-community-server    # 安装MySQL
systemctl start mysqld.service              # 启动MySQL      
systemctl enable mysqld.service     # 开机启动

mysql安装完成之后,修改root用户密码:

#修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:
skip-grant-tables=1         # 这一行配置让 mysqld 启动时不对密码进行验证
#重启 mysqld 服务:
systemctl restart mysqld
#使用 root 用户登录到 mysql:
mysql -u root 
#切换到mysql数据库,更新 user 表:
use mysql;
#在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
FLUSH PRIVILEGES;
#退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容
#重启 mysqld 服务,再用新密码root登录即可

配置默认编码为utf8

#修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'

重新启动mysql服务使配置生效:

systemctl restart mysqld

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,添加一个新的帐户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'apelogs'@'%' IDENTIFIED BY 'ApeLogs20170214' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

三. 安装PHP7

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm       # 安装epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm                     # 安装PHP7的rpm源

执行命令安装php7:

yum install -y php70w php70w-cli php70w-common php70w-gd php70w-xml php70w-ldap php70w-mbstring php70w-mcrypt php70w-mysql php70w-pdo php70w-devel

安装php-fpm:

yum install php70w-fpm php70w-opcache

设置用户和组:

vi /etc/php-fpm.d/www.conf
    user=www  
    group=www

开机启动:

systemctl enable php-fpm.service

启动php-fpm:

systemctl start php-fpm

修改 /etc/nginx/conf.d/default.conf 文件,找到下面这段并改为如下所示:

    location ~ \.php$ {
        root           /home/wwwroot/webs/default;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

重启nginx:

nginx -s reload

查看PHPinfo

vi /home/wwwroot/webs/default/index.php
<?
phpinfo();
?>
chown -R www:www /home/wwwroot

浏览器访问 http://IP/index.php 成功则环境已搭建好.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,039评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,223评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,916评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,009评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,030评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,011评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,934评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,754评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,202评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,433评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,590评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,321评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,917评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,568评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,738评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,583评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,482评论 2 352

推荐阅读更多精彩内容