CentOS7上安装并配置Nginx、PHP、MySql
一、Nginx
1、安装nginx
yum install nginx
2、启动nginx
systemctl start nginx
除了systemctl start nginx之外,常用的相关命令还有systemctl stop nginx、systemctl restart nginx、systemctl status nginx
3、测试nginx是否安装成功
浏览器输入ip地址或者域名(已经解析过的域名),如下图所示,则安装成功。

4,配置Nginx支持PHP解析
编辑/etc/nginx/nginx.conf,蓝色字体处为新加内容
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
index index.php index.html index.htm;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ .php$ {
try_files $uri =404;
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
}
二、PHP
1,安装PHP
yum install php php-mysql php-fpm
安装过程中经常会见到如下问题:
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18(libmysqlclient_18)(64bit)
解决方法:
把php-mysql换成php-mysqlnd
即执行
yum install php php-mysqlnd php-fpm
2、编辑PHP的配置文件,/etc/php.ini,注意去掉分号注释
vim /etc/php.ini
将 ;cgi.fix_pathinfo=1 改为 cgi.fix_pathinfo=0
3、编辑PHP-FPM配置文件
vim /etc/php-fpm.d/www.conf
将
user = nobody
group = nobody
改为
user = nginx
group = nginx
前提是已经创建了nginx用户和nginx组。如果没有创建方法:
groupadd -r nginx
useradd -r -g nginx nginx
4、启动PHP—FPM
systemctl start php-fpm
5、设置开机启动
systemctl enable php-fpm
6,确保Nginx配置文件修该之后,重启Nginx
systemctl restart nginx
7、在/usr/share/nginx/html/目录下创建phpinfo.php
内容如下:
<?php phpinfo();?>
查看php进程:ps aux | grep php 查看端口占用:netstat -ano|grep 80
8、浏览器上输入ip/phpinfo.php,如果出现如下界面,说明PHP和Nginx均安装和配置成功。

三、MySql
CentOS 7的yum源中貌似没有正常安装mysql时的mysql-sever文件,需要去官网上下载
1、补充yum源(1)
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2、补充yum源(2)
rpm -ivh mysql-community-release-el7-5.noarch.rpm
3、安装mysql
yum install mysql-community-server
4、成功安装之后重启mysql服务
systemctl start mysqld
初次安装mysql是root账户是没有密码的
设置密码的方法
mysql -uroot
mysql> set password for ‘root’@‘localhost’ = password('mypasswd');
mysql> exit
mysql -u root -p
输入密码之后,错误提示如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),意思是root的密码不正确。
解决办法如下:
a.sudo mysqld_safe --user=root --skip-grant-tables --skip-networking &
输入命令之后,如果提示信息为:
mysqld_safe A mysqld process already exists
表示mysqld_safe进程存在,可以通过
ps -A|grep mysql 查看mysqld_safe进程ID
kill -9 -xxxx 终结ID为xxxx的进程
CentOS7上安装并配置Nginx、PHP、MySql的更多相关文章
- CentOS6.3上安装与配置nginx+php+mysql环境
1. 目前nginx采用是源码包安装的方式(yum安装失败),下载地址:http://nginx.org/en/download.html 我这里的安装包是:nginx-1.12.0.tar.gz 2 ...
- CentOS7.X安装LMMP环境Nginx+PHP+Mysql详解
前言: 作为PHP开发者,我们常用的线上环境就是LNMP,合理的搭建也是必须掌握的技能,下面就利用源码的方式详细介绍下LNMP环境Nginx+PHP+Mysql的详细搭建步骤: 版本说明: Nginx ...
- Ubuntu/CentOS 系统上安装与配置Nginx
一.在线安装: Ubuntu:sudo apt-get install nginx CentOS: sudo yum install nginx 二.安装后的位置: 1.服务地址:/etc/init. ...
- Centos 7 手把手教你使用YUM方式安装并配置Nginx+php7-fpm+MySQL
需要准备的内容 一台纯净系统的服务器 远程连接服务器的工具 (我这里使用Xshell) 安装nginx 链接上服务器后执行 yum install nginx 这里需要输入y 后回车,开始安装ngi ...
- LEMP--如何在Ubuntu上安装Linux、Nginx、MySQL和PHP
简介 LEMP是用来搭建动态网站的一组软件,首字母缩写分别表示Linux.Nginx(Engine-X).MySQL和PHP. 本文将讲述如何在Ubuntu安装LEMP套件.当然,首先要安装Ubunt ...
- Centos7上安装及配置Apache
Apache HTTP服务器是世界上最流行的Web服务器. 它是一款免费的开源和跨平台的HTTP服务器,提供强大的功能,可以通过各种模块进行扩展. 以下说明介绍如何在CentOS 7机器上安装和管理A ...
- CentOS7上安装与配置Tomcat8与MySQL5.7
一.安装tomcat Tomcat 的安装依赖 JDK,在安装 Tomcat 之前需要先安装 Java JDK.输入命令 java -version,如果显示 JDK 版本,证明已经安装了 JDK.
- centos7上安装与配置Tomcat7(整理篇)
1.检查tomcat7是否已经安装 rpm -qa | grep tomcat ps -ef | grep tomcat 第一条命令查看是用rpm安装过tomcat,由于我们倾向于安装解压版的tomc ...
- 使用Homebrew在Mac OS X EI Capitan上安装与配置nginx和PHP
安装nginx brew install nginx sudo nginx 测试安装 在浏览器打开下面的链接地址 http://localhost:8080 nginx.conf配置 # HTTPS ...
随机推荐
- 利用10h号中断在dos中间显示自己名字
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- 【转】查询SQLSERVER执行过的SQL记录
--创建时间 QS.creation_time, --查询语句 ), (( THEN DATALENGTH(st.text) ) ) AS statement_text, --执行文本 ST.text ...
- docker 安装NexusRepository Manager
今天学习了一下docker 感觉这东西要学习好多的命令,但是自己又是喜欢这种命令,感觉linux总是高一个等级的东西,这几天学习使用docker安装各种东西,下面记录一些我安装nexus的步骤,还是不 ...
- python_缩进_格式化代码
pycharm如何格式化代码? ctrl + alt + l pycharm如何缩进代码? tab 向右缩进4格 shift + tab 向左缩进4格
- 《剑指offer》数组中出现次数超过数组长度一半的数字
题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2.如 ...
- maven(项目管理工具系列 maven 总结二)
♣maven是什么? ♣maven下载.安装 ♣了解maven仓库 ♣eclipse配置maven ♣创建maven项目 ♣把maven项目转化为web项目 1.maven是什么? Maven是一个项 ...
- 编译原理:基于状态转换图识别for语句
int state =0;while(state<9){ switch state{ case 0: if(ch=='f'){ state=1;getchar(ch); } case 1: if ...
- 【转】shell学习笔记(三)——引用变量、内部变量、条件测试、字符串比较、整数比较等
1.env显示当前的环境变量 2.PS1='[\u@\h \w \A] \$' 可以设置bash的命令与提示符. 3.echo $$ 显示当前bash的PID号 4.echo $?显示上一条指令的回传 ...
- Netty 编解码技术 数据通信和心跳监控案例
Netty 编解码技术 数据通信和心跳监控案例 多台服务器之间在进行跨进程服务调用时,需要使用特定的编解码技术,对需要进行网络传输的对象做编码和解码操作,以便完成远程调用.Netty提供了完善,易扩展 ...
- MySQL死锁案例分析与解决方案
MySQL死锁案例分析与解决方案 现象: 数据库查询: SQL语句分析: mysql. 并发delete同一行记录,偶发死锁. delete from x_table where id=? ...