LNMP环境搭建(nginx+mysql+php)

LNMP 环境搭建(nginx+mysql+php)

本教程是在CentOS 7 下运行的

前期准备

yum -y install gcc gcc-c++ autoconf pcre-devel make automake
yum -y install wget httpd-tools vim
systemctl disable firewalld  #(永久关闭防火墙)

安装 nginx 服务器

1、检测 yum 是否已经存在

 yum list | grep nginx

如果返回值 nginx的版本说明yum源中已经存在nginx 否则我们要进行一下配置

2、配置yum源

vim /etc/yum.repos.d/nginx.repo

最新的 yum 源配置可以去nginx的官网寻找 (先点击download,在下载页点击stable and mainline

image.png

(本教程中的配置信息)按 i 编辑进入编辑模式

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true<br>
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

3、安装nginx

yum -y install nginx

4、查看nginx的安装版本

nginx -v

返回nginx版本则说明安装成功

安装Mysql

下载mysql的离线压缩包,不推荐使用yum直接安装
链接:https://pan.baidu.com/s/1o4kANL4EQ5gq4DM5T3-fJg
提取码:aoem

上传到linux 的 / 根目录 然后解压

tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

移动解压后的文件夹,并且重命名

mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql

创建mysql用户组和用户并修改权限

groupadd mysql
useradd -r -g mysql mysql

创建数据目录并赋予权限

mkdir -p  /data/mysql            #创建目录
chown mysql:mysql -R /data/mysql          #赋予权限

配置my.cnf

vim /etc/my.cnf

内容如下

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

初始化数据库

进入mysql的bin目录

cd /usr/local/mysql/bin/

初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

如执行后报错内容为 ./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
我们需要安装libaio再次初始化

yum install libaio

查看默认密码并记录,我们一会要用它修改为自己的密码

cat /data/mysql/mysql.err
image.png

启动mysql 并更改root密码

先将mysql.server放置到/etc/init.d/mysql中

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

启动

service mysql start
 
ps -ef|grep mysql    #查看mysql的进程可以不执行这句

修改mysql的默认密码

首先登录mysql,前面的那个是随机生成的。

./mysql -u root -p   #bin目录下(密码支持粘贴-密码不可见 * 号都没有)

再执行下面三步操作,然后重新登录。

SET PASSWORD = PASSWORD('123456');    #(123456)是你要设置的mysql密码
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;  

解决远程登录

use mysql                                            #访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;                                    #刷新

如果不希望每次都到bin目录下使用mysql命令则执行以下命令

ln -s  /usr/local/mysql/bin/mysql    /usr/bin

设置mysql开机自启动

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
systemctl enable mysqld

命令执行完成后,我们重新连接服务器即可

声明:以上数据库的安装教程来自 蛇皮蛋蛋

PHP环境安装

1、更新 yum 源
运行以下命令添加IUS源(下面的命令是模板,不是运行命令)。

#运行命令前,请将<版本号>替换为当前可用的版本号。
yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-<版本号>.ius.centos7.noarch.rpm

本教程中使用的命令如下

yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-15.ius.centos7.noarch.rpm
  • 查找可用版本号的方法如下:
    访问ius community网站。
    在搜索框中输入ius-release
    选择带有centos7的版本。红框中的内容即为可用的版本号,如下图所示。

    image.png

  • 运行以下命令添加Webtatic源。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  • 运行以下命令安装PHP。

yum -y install php70w-devel 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-pdo.x86_64   php70w-mysqlnd  php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongodb

  • 如果报错Cannot find a valid baseurl for repo: ius/x86_64,请尝试运行以下命令编辑文件/etc/yum.repos.d/ius.repo
vi /etc/yum.repos.d/ius.repo
php -v

配置nginx

  • 运行以下命令备份Nginx配置文件。
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
  • 运行以下命令打开Nginx配置文件。
vim /etc/nginx/conf.d/default.conf
  • server 大括号内,添加下列配置信息。

        #添加下列信息,配置Nginx通过fastcgi方式处理您的PHP请求
        location ~ .php$ {
            root /usr/share/nginx/html;    #将/usr/share/nginx/html替换为您的网站根目录,本教程使用/usr/share/nginx/html作为网站根目录
            fastcgi_pass 127.0.0.1:9000;   #Nginx通过本机的9000端口将PHP请求转发给PHP-FPM进行处理
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include fastcgi_params;   #Nginx调用fastcgi接口处理PHP请求
        }        
  • 重启nginx 服务
systemctl start nginx
# 或者
nginx -s reload
  • 运行一下命令设置nginx 开机自启
systemctl enable nginx

配置php

  • 在网站根目录新建一个php 文件
vim /usr/share/nginx/html/phpinfo.php
  • 输入下列内容。
<?php echo phpinfo(); ?>
  • 启动 php-fpm
php-fpm
# 或者
systemctl start php-fpm
  • 运行以下命令设置PHP-FPM开机自启动。
systemctl enable php-fpm

测试

在浏览器中输入ip + /phpinfo.php
返回结果如下图所示,表示LNMP环境部署成功。

image.png

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

推荐阅读更多精彩内容