0

0

centos 7.2下搭建LNMP环境教程

高洛峰

高洛峰

发布时间:2016-12-12 09:48:13

|

1870人浏览过

|

来源于php中文网

原创

本机环境:服务器是阿里云ecs;使用的镜像是:公共镜像 centos 7.2 

一.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

 重启服务:

systemctl restart mysql.service

 登录,并修改密码:

mysql -u root
 
mysql > use mysql;
 
mysql > update user set password=password(‘123456‘) where user=‘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

   

3.安装php7.0

yum install php70w

4.安装php扩展

 php70w-mysql.x8664  mysql扩展(作为依赖同时安装 php70w-pdo.x8664)

 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。

Tome
Tome

先进的AI智能PPT制作工具

下载

使用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 环境搭建完成!

最后,在web根目录下下一个php文件测试下;呼呼~~

为了更方便的访问修改数据库,需要安装mysql管理工具 phpMyAdmin

跳转web根目录:(根据之前设置跳转自己的网站根目录)

cd /wwwdata/html/

下载pma安装包:

wget https://files.phpmyadmin.net/phpMyAdmin/4.4.12/phpMyAdmin-4.4.12-all-languages.zip

解压安装包:

unzip phpMyAdmin-4.4.12-all-languages.zip

这里如果缺少 unzip 需要先安装unzip;

yum install unzip zip

重命名安装文件夹

mv phpMyAdmin-4.4.12-all-languages phpmyadmin

修改session存放目录权限:

chown -R nginx.nginx /var/lib/php/session

如果需要修改session根目录位置 需要修改位置:

/etc/php.ini 中修改 session.save_path

由于 /etc/php-fpm.d/www.conf中 的 session.save_path  比php.ini优先级更高所以如果 存在  /etc/php-fpm.d/www.conf中 的 session.save_path 只需修改这个即可

访问http://youipaddress/phpmyadin,如果能访问上,那么就成功了!

以为这样就可以了 但是登录又出现问题!登陆不上 !

做了一下修改:

   1.修改/var/lib/php/session文件夹权限 770以上

   2.在phpmyadmin目录下 config.sample.inc.php 中修改 $cfg'Servers'['user'] = 'root';$cfg'Servers'['password'] = '123456'; 为自己设置的用户名密码;

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

38

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

83

2026.03.09

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

97

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

223

2026.03.05

PHP高性能API设计与Laravel服务架构实践
PHP高性能API设计与Laravel服务架构实践

本专题围绕 PHP 在现代 Web 后端开发中的高性能实践展开,重点讲解基于 Laravel 框架构建可扩展 API 服务的核心方法。内容涵盖路由与中间件机制、服务容器与依赖注入、接口版本管理、缓存策略设计以及队列异步处理方案。同时结合高并发场景,深入分析性能瓶颈定位与优化思路,帮助开发者构建稳定、高效、易维护的 PHP 后端服务体系。

458

2026.03.04

AI安装教程大全
AI安装教程大全

2026最全AI工具安装教程专题:包含各版本AI绘图、AI视频、智能办公软件的本地化部署手册。全篇零基础友好,附带最新模型下载地址、一键安装脚本及常见报错修复方案。每日更新,收藏这一篇就够了,让AI安装不再报错!

169

2026.03.04

Swift iOS架构设计与MVVM模式实战
Swift iOS架构设计与MVVM模式实战

本专题聚焦 Swift 在 iOS 应用架构设计中的实践,系统讲解 MVVM 模式的核心思想、数据绑定机制、模块拆分策略以及组件化开发方法。内容涵盖网络层封装、状态管理、依赖注入与性能优化技巧。通过完整项目案例,帮助开发者构建结构清晰、可维护性强的 iOS 应用架构体系。

246

2026.03.03

C++高性能网络编程与Reactor模型实践
C++高性能网络编程与Reactor模型实践

本专题围绕 C++ 在高性能网络服务开发中的应用展开,深入讲解 Socket 编程、多路复用机制、Reactor 模型设计原理以及线程池协作策略。内容涵盖 epoll 实现机制、内存管理优化、连接管理策略与高并发场景下的性能调优方法。通过构建高并发网络服务器实战案例,帮助开发者掌握 C++ 在底层系统与网络通信领域的核心技术。

34

2026.03.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号