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. 如何使用 OpenCV 打开摄像头获取图像数据?

    OpenCV 如何打开摄像头获取图像数据? 代码运行环境:Qt 5.9.1 msvc2015 32bit OpenCV 3.3.0 #include "include/opencv2/ope ...

  2. 坑人的toLocaleDateString和简单地跳坑方式

    最近在做一个一个医学大数据的项目的时候,独立设计.构思.制作了完成了一个生命历程图的功能.既然设计到时间,那就免不了对Date对象进行一系列的操作,也就免不了对日期对象进行一系列的格式化.走的路多了, ...

  3. swift 学习之自动引用计数

    swift 学习之自动引用计数 学习和研究的主要是"实例对象和实例对象直接的相会强引用所产生的内从泄漏"和"使用闭包产生的强引用造成的内存泄漏" 注意:只有以引 ...

  4. 文件无法复制的原因-IT33

    Win7系统复制数据至其他硬盘或者是移动存储设备是,有时会发生无法复制文件过大的情况.这里先大致介绍一下硬盘文件系统分为NFTS格式和FAT32格式这两种,其中FAT32仅支持单次移动4G以下容量的数 ...

  5. 2_成员函数(Member Functions)

    成员函数以定从属于类,不能独立存在,这是它与普通函数的重要区别.所以我们在类定义体外定义成员函数的时候,必须在函数名之前冠以类名,如Date::isLeapYear().但如果在类定义体内定义成员函数 ...

  6. document.forms[].submit()

    document.forms['exportServlet'].submit(); (1)document.forms:表示获取当前页面的所有表单 (2)document.forms[0]:表示获取当 ...

  7. Ubuntu12.04LTS安装好后是空白桌面的解决步骤(更新显卡驱动)

    安装完毕启动后,明显慢的要死,登陆后竟然是一个空白的桌面环境,Ctrl+Alt+T 根本没有任何反应.唯一的反应就是右键能够创建文件和文档. 同时打开的窗口没有最大化,最小化及关闭按钮. GOOGLE ...

  8. XP硬盘读写速度很慢的解决方法

    05购入的电脑,今日仍在发挥余热,但系统速度慢得出奇.今日检测了硬盘读写速度还不到2m/s,实在令人难以接受.一查之下,硬盘被置为PIO模式了,难怪. 用以下方法得以解决: 1.对桌面"我的 ...

  9. do while 循环和while循环的区别

    do while 循环和while循环的区别 1.do while循环是先执行循环体,然后判断循环条件,如果为真,则执行下一步循环,否则终止循环:    while循环是先判断循环条件,如果条件为真则 ...

  10. Linux显示只显示目录文件

    Linux显示只显示目录文件 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ls -l -d */ drwxr-xr-x 2 root root 4096 1 ...