LNMP环境搭建

一.nginx安装

1.下载对应当前系统版本的nginx包(package)

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

2.建立nginx的yum仓库(默认yum是没有nginx的)

​ rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

3.下载并安装nginx

​ yum install nginx

4.nginx启动(nginx安装目录下-/usr/sbin/)

​systemctl start nginx.service

ps:一些其它nginx相关命令:

nginx相关配置文件:

​ 默认的配置文件在 /etc/nginx 路径下,使用该配置已经可以正确地运行nginx;

​ 如需要自定义,修改其下的 nginx.conf 等文件即可;

在浏览器地址栏中输入部署nginx环境的机器的IP,如果一切正常,应该能看到如下字样的内容。

Welcome to nginx!

If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.

For online documentation and support please refer tonginx.org.Commercial support is available atnginx.com.

Thank you for using nginx.

第二步:MYSQL安装

1.先下载mysql的repo源;相关命令:

​wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.安装mysql-community-release-el7-5.noarch.rpm包

(安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo)

​ rpm -ivh mysql-community-release-el7-5.noarch.rpm

3.安装MYSQL

​ sudo yum install mysql-server

4.重置密码

​ 更改用户权限:

sudo chown -R root:root /var/lib/mysql

(很多时候mysql无法用启动,是因为mysql的拥有者是root,而mysql是用mysql用户身份执行当然写不进去了,是系统权限的问题

尝试使用chown -R mysql:mysql /var/lib/mysql/  )

​ 重启服务:

systemctl restart mysql.service

​ 登录,并修改密码:

mysql -u root


​ mysql > use mysql;


​ mysql > updateusersetpassword=password(‘123456‘) whereuser=‘root‘;


​ mysql > exit;

第三步:安装php

1.查看当前安装的php版本( yum list installed | grep php)

​ 如果存在php安装包先删除之前版本  用yum remove 移除 php相关的包

2.rpm 安装 Php7 相应的 yum源

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


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


其他 高版本

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

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

3.安装php7.0

yum install php70w

4.安装php扩展

​php70w-mysql.x8664   mysql扩展(作为依赖同时安装 php70w-pdo.x8664)(若无此扩展 使用 yum list | grep mysql  查询可用扩展的版本)

​php70w-gd.x86_64  GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。

​php70w-ldap.x86_64  "轻量级目录访问协议",是一个用于访问"目录服务器"(Directory Servers)的协议;

php70w-mbstring.x86_64    mbstring扩展库用于处理多字节字符串,PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得到的只是字符串所占的字节数。对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是1~3倍的差异了。采用mb_strlen函数可以较好地解决这个问题。

php70w-mcrypt.x86_64    Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。

5.安装PHP FPM

​ yum install php70w-fpm

关于 php-fpm

​ PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的PHP源代码中,在编译安装PHP后才可以使用。

​ 现在我们可以在最新的PHP 5.3.2的源码树里下载得到直接整合了PHP-FPM的分支,据说下个版本会融合进PHP的主分支去。相对Spawn-FCGI,PHP-FPM在CPU和内存方面的控制都更胜一筹,而且前者很容易崩溃,必须用crontab进行监控,而PHP-FPM则没有这种烦恼。

​ PHP5.3.3已经集成php-fpm了,不再是第三方的包了。PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,比spawn-fcgi具有更多优点,所以被PHP官方收录了。在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

使用PHP-FPM来控制PHP-CGI的FastCGI进程

第四步:配置nginx

修改配置文件之前记得备份

1.nginx配置文件位置:(/etc/nginx/conf.d/default.conf)

​ 修改web root目录(如果没有需求也可以不用修改,使用默认即可):

root /wwwdata/html;

​ 配置php解析

​ location ~.php$ {


​ fastcgi_pass 127.0.0.1:9000;


​ fastcgi_index index.php;


​fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;


​ include    fastcgi_params;


​ }

2.php-fpm配置文件位置:(/etc/php-fpm.d/www.conf)

​ 修改

user =nginx

​ group=nginx

3.启动nginx服务:

systemctl start nginx.service

​ 如需设置开机自启使用以下命令:

sudo systemctl enable nginx.service

​ 查看启动状态:

systemctl status nginx 

看到以下字眼说明启动成功!

​Active: active (running) since 六 2016-11-19 13:40:04 CST; 50min ago

4.启动PHP-FPM:

systemctl start php-fpm.service

 如需设置开机自启试用以下命令:

sudo systemctl enable php-fpm.service

​ 查看启动状态:

systemctl status php-fpm.service

看到以下字眼说明启动成功!

​Active: active (running) since 六 2016-11-19 14:14:33 CST; 18min ago

至此,php+mysql+nginx 环境搭建完成!



配置防火墙 端口 

1:先安装iptables-services服务  通过servvice方式操作防火墙

yum install iptables-services

此命令会在 /etc/sysconfig/下生成一个iptables文件  

2:在文件上添加对应的端口既可


关于Selinux 

更换root目录的时候出现个问题  Nginx配置没问题但更换过后就是访问不了,error.log报权限错误,  给了777权限还是不行

需要把Selinux 关掉  , /usr/sbin/sestatus  查看它的运行状态  , vim /etc/selinux/config 去配置文件删掉


安装redis扩展

1、下载PHPRedis  git clone https://github.com/nicolasff/phpredis

2、/usr/local/php7/bin/phpize #找不到phpize的路径可用whereis命令查看:whereis phpize 得到路径

3、./configure --with-php-config=/usr/local/php/bin/php-config #此处为php-config的路径,可用whereis php-config查看路径

4、make && make install

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

推荐阅读更多精彩内容