1.更新yum源

yum -y update

2. 安装 epel-release

yum install epel-release -y

检测安装成功:yum search nginx  结果含有:nginx.x86_64 : A high performance web server and reverse proxy server 表示成功

CentOS 系列的服务器系统有一个毛病,就是官方自带的源的软件比较古老,并且很多的软件都没有。因为他们的首要任务是保证服务器的稳定,而不是追求最新。但是太过于保守了,一般来说,我们会给服务器添加一个 epel-release 这个源。这个源里包含了例如 nginx 之类的我们需要的软件,使用起来比较方便。

3.安装服务器常用软件

yum -y install vim*

Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器

yum install wget

wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理。

yum -y install lrzsz

lrzsz是一款在linux里可代替ftp上传和下载的程序。

yum install zip unzip

作用:zip压缩、unzip解压缩

4.安装Nginx

nginx 依赖的一些 lib 库:

yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl--devel 

安装 Nginx

cd /usr/local

打开 usr 下的 local 文件夹

yum install nginx -y

安装Nginx,此安装的包已经是更新过的源

systemctl start nginx

启动 nginx

systemctl enable nginx

将 nginx 设置为开机启动

完成安装在浏览器访问主机 ip ,看看是否能打开。

5.安装PHP7

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

安装php7的rpm包

yum search php7

查询下自己的php7是哪个版本以及扩展库,例如:php70w、php71w、php72w、php70w-fpm等

yum install php70w

以自己的包为准

yum install php70w-openssl php70w-common php70w-fpm php70w-mysql php70w-mysqld php70w-pdo

安装PHP7的扩展库的版本号和PHP7的版本对应,也就是 php70w 的版本对应同版本的扩展库 php70w-fpm等。

6.安装Mysql

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

下载mysql源安装包

rpm -ivh mysql57-community-release-el7-8.noarch.rpm

安装mysql源

yum -y install mysql-server

安装mysql

service mysqld start

systemctl start mysqld

启动mysql服务器

systemctl status mysqld

查看mysql状态

systemctl enable mysqld
systemctl daemon-reload

开机启动

grep 'temporary password' /var/log/mysqld.log

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过上面的方式找到root默认密码( :后面为密码),然后登录mysql进行修改

mysql -uroot -p

按回车,输入刚才的临时密码,进入mysql来修改密码

set global validate_password_policy=0;

mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR报错。

此处代码用来修改密码强度:0 or LOW(密码任意,但长度在 8 位或以上)。

set global validate_password_length=4;

设置的密码少于8位,请执行上述命令(最少是4)

set password for 'root'@'localhost'=password('新密码');

执行此代码修改mysql登陆密码

GRANT ALL PRIVILEGES ON *.* TO 'yourname'@'%' IDENTIFIED BY 'YourPassword@123' WITH GRANT OPTION;

添加远程登录用户,默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,执行上述代码。

7.配置php、nginx

配置php

vim /etc/php.ini

修改 php.ini 把 cgi.fix_pathinfo 的值改为0 ,前面有 ;的话去掉,大约在763行,进入文件后  输入 :763 定位过去。

vim /etc/php-fpm.d/www.conf

修改 www.cong 修改两处

listen.owner = nobody

listen.group = nobody

这两行前面的  ;去掉

user = apache
group = apache

将apache 更换成 nginx ,保存后退出( :wq )

systemctl start php-fpm

systemctl enable php-fpm

启动PHP,并将它设置为开机启动。

配置nginx

vim /etc/nginx/nginx.conf

打开配置文件

server {
  listen 80;
  server_name 127.0.0.1:9000;
  root /www/;
  index index.php index.html index.htm

  # Load configuration files for the default server block.
  include /etc/nginx/default.d/*.conf;

  location ~ \.php$ {

  fastcgi_pass 127.0.0.1:9000;
  fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
  include fastcgi_params;
  }

  location / {
  }

  error_page 404 /404.html;
  location = /40x.html {
  }

  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
  }
}

依照这个格式改,listen 监听端口,server_name 项目网址(默认设置127.0.0.1:9000),root 项目路径;  index 服务器按顺序找首页文件,前面的没有往后找,玩php就可以把 index.php放前面。

localtion 中把 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 中的 $document_root 改为 项目地址。

在项目文件路径下写个 info.php

<?php

echo phpinfo()

?>

保存退出后,在浏览器输入主机外网 ip/info.php ,查看下是否成功。

Centos搭建开发环境,PHP7+ Nginx1.12+ Mysql5.7的更多相关文章

  1. Win10 Hyper-v 中安装 CentOS 搭建开发环境

    Windows 环境 操作系统:Windows 10 开发环境:VS2005(需启动.NET Framework 3.5 ,才能正常安装使用)  Linux 环境 发行版:CentOS 7_x64 安 ...

  2. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  3. Sublime Text3 + Golang搭建开发环境

    Sublime Text3 + Golang搭建开发环境 http://blog.csdn.net/aqiang912/article/details/46775409 1.安装git 因为golan ...

  4. Centos Android开发环境配置-Android Tools -android list sdk --extended --all

    Centos Android开发环境配置-Android Tools -android  list sdk --extended --all 安装完Android Tools后执行 android   ...

  5. 深入浅出Docker(五):基于Fig搭建开发环境

    概述 在搭建开发环境时,我们都希望搭建过程能够简单,并且一劳永逸,其他的同事可以复用已经搭建好的开发环境以节省开发时间.而在搭建开发环境时,我们经常会被复杂的配置以及重复的下载安装所困扰.在Docke ...

  6. webpack环境搭建开发环境,JavaScript面向对象的详解,UML类图的使用

    PS:因为所有的设计模式都是基于面向对象来完成的,所以在讲解设计模式之前先来过一下面向对象都有哪些知识点 搭建开发环境 初始化npm环境 下载安装nodejs安装即可,nodejs自带npm管理包,然 ...

  7. Android 程序分析环境搭建-开发环境搭建

    1.1  JDK 安装 JDK 的配置,初学java 开发,那是必须会的. 下载,遇到的问题就是要注册oracle 的账号,还有你要下载特定版本,比如jdk 1.7,jdk 1.6,很难找到在哪里.解 ...

  8. 和重复搭建开发环境说 Bye Bye 之Vagrant

    每每新同事入职,都要在自己电脑上配置一堆环境,费神费力:每每开发测试都要重新配置开发环境,手工搭建,步骤很繁琐,极易出错. 大神在时,大神搭建,大神不在,以手抚膺坐长叹.为此,VVVVVagrant横 ...

  9. 二、Electron + Webpack + Vue 搭建开发环境及打包安装

    目录 Webpack + Vue 搭建开发环境及打包安装 ------- 打包渲染进程 Electron + Webpack  搭建开发环境及打包安装 ------- 打包主进程 Electron + ...

随机推荐

  1. CodeForces-748D 贪心

    这题的思维难度不是很大,属于编程实现细节处理较多的题. 暂且把每个字符串的"beauty"称为魅力值,用一个优先队列数组将同一个字符串的所有魅力值保存,通过map将不同字符串编号, ...

  2. 支付宝wap支付调起客户端

    https://mclient.alipay.com/home/exterfaceAssign.htm?alipay_exterface_invoke_assign_client_ip=183.15. ...

  3. Web渗透测试(sql注入 access,mssql,mysql,oracle,)

    Access数据库注入: access数据库由微软发布的关系型数据库(小型的),安全性差. access数据库后缀名位*.mdb, asp中连接字符串应用-- "Driver={micros ...

  4. a标签文字选中后的颜色样式更改

    ::selection 选择器,选择被用户选取的元素部分.是css3的用法,讲真,我觉得这个东西没必要特地去写.因为选中样式默认的会根据你的背景颜色还有字体color来设置颜色 这是我默认的样式

  5. caffe+GAN︱PPGN生成模型5则官方案例(caffe版)

    一.效果与架构 PPGN 整合了对抗训练.cnn特征匹配.降噪自编码.Langevin采样:在NIPS2016得到了Ian Goodfellow的介绍. PPGN生成的图像同类差异化大,可根据指定生成 ...

  6. javaWeb之eclipse创建Servlet模板快捷键设置

    没有模板创建Servlet 出现的是除了doPOST 和doGet方法 还有许多方法和一些注释,页面不够清晰 创建模板的步骤是: 1.点击window下的preference 选项 2在 表单框里填写 ...

  7. hdu5893 List wants to travel

    裸的树链剖分加线段树区间修改 区间合并时需要多注意一点 当时写的很慢 理解不深刻 #include<bits/stdc++.h> using namespace std; const in ...

  8. EF Core下利用Mysql进行数据存储在并发访问下的数据同步问题

    小故事 在开始讲这篇文章之前,我们来说一个小故事,纯素虚构(真实的存钱逻辑并非如此) 小刘发工资后,赶忙拿着现金去银行,准备把钱存起来,而与此同时,小刘的老婆刘嫂知道小刘的品性,知道他发工资的日子,也 ...

  9. 关于jquery插件模板的两个案例

    /** * jquery tips 提示插件 jquery.tips.js v0.1beta * * 使用方法 * $(selector).tips({ //selector 为jquery选择器 * ...

  10. Python Cookbook(第3版)中文版:15.17 传递文件名给C扩展

    15.17 传递文件名给C扩展¶ 问题¶ 你需要向C库函数传递文件名,但是需要确保文件名根据系统期望的文件名编码方式编码过. 解决方案¶ 写一个接受一个文件名为参数的扩展函数,如下这样: static ...