烂泥:学习centos之快速搭建LNMP环境
以前在centos下安装软件都是喜欢源码安装,不过昨天因为一个事情需要一个centos 下的LNMP环境。反倒不会搞了,今天特意记录下,以备后续使用。
一、安装nginx
我们先来安装nginx,如下:
yum -y install nginx

通过上图,我们可以看到目前的yum源中是没有nginx软件包的。我们需要安装包含nginx的yum源,如下:
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

查看刚刚安装的rpm包,如下:
rpm -ql nginx-release-centos-6-0.el6.ngx.noarch

通过上图,我们可以很明显的看出刚刚安装的rpm包,只是新添加了一个nginx的yum源。查看该yum源,如下:
cat /etc/yum.repos.d/nginx.repo

现在我们再来通过yum来安装nginx,如下:
yum -y install nginx

通过上图,我们可以很明显的看出nginx已经安装。
现在来查看nginx安装的位置及其文件,如下:
rpm -ql nginx

通过上图,我们可以很明显的看出nginx默认安装到/etc/nginx目录,而nginx的默认网站安装到/usr/share/nginx/html目录下。
现在我们来启动nginx,并访问nginx。如下:
/etc/init.d/nginx start
curl http://192.168.1.124


查看nginx运行时使用的用户,如下:
ps -ef |grep nginx

通过上图,我们可以很明显的看出nginx是root用户启动,但是nginx运行时使用的是nginx这个用户。
二、安装php及php-fpm
安装php及php-fpm,使用如下命令:
yum -y install php php-fpm

查看php-fpm安装的位置及其文件,如下:
rpm -ql php-fpm

启动php-fpm,使用如下命令:
/etc/init.d/php-fpm start
ps -ef |grep php-fpm
netstat -tunlp |grep 1355

通过上图,我们可以看出php-fpm运行时使用apache这个用户,而且php-fpm监听的是本机的9000端口。
如果要修改php-fpm运行时的用户及端口的话,我们可以通过修改php-fpm配置文件/etc/php-fpm.d/www.conf,如下:
cat /etc/php-fpm.d/www.conf |grep -v '^;'|grep -v ^$

三、nginx与php集成
nginx与php集成是通过fastcgi来实现,而fastcgi我们一般使用的是php-fpm。在第二章,我们已经启动php-fpm,现在我们来修改nginx配置文件使其支持php。
现在我们修改nginx的默认网站配置文件default.conf,如下:
cat /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
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_params;
}
}

以上配置完毕后,我们再重启nginx和php-fpm,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart


以上是修改nginx的默认网站,现在我们新加一个nginx虚拟主机,并使其支持php,如下:
vi /etc/nginx/conf.d/ilanni.conf
server {
listen 80;
server_name test.ilanni.com;
location / {
root /ilanni;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /ilanni;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

nginx虚拟主机配置文件完毕后,现在来创建虚拟主机ilanni的index.php,如下:
mkdir /ilanni
vi /ilanni/index.php
<?php phpinfo(); ?>

修改ilanni目录的所属用户,如下:
chown nginx:nginx -R /ilanni/
ll /ilanni/

如上图所示,我们现在把ilanni这个目录修改为nginx运行时使用的用户nginx。
现在我们再来修改php-fpm运行时的用户,如下:
vi /etc/php-fpm.d/www.conf

我们来重启nginx与php-fpm,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart


通过上图,我们可以看到nginx的虚拟主机已经可以正确解析php。
四、安装mysql
安装MySQL,使用如下命令:
yum -y install mysql mysql-server php-mysql

安装完毕后,启动mysql。如下:
/etc/init.d/mysqld start

现在我们在nginx默认网站创建一个mysql.php文件,用来连接mysql数据库。mysql.php内容如下:
cat /usr/share/nginx/html/mysql.php
<?php
$host='localhost';
$root='root';
$pwd='';
$con= mysql_connect($host,$root,$pwd);
if ( $con == false ) {
echo "connect false";
} else{
echo "connect true";
}
?>

重启nginx、php-fpm、mysql,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
/etc/init.d/mysqld restart

现在通过访问该mysql.php文件,如下:
http://192.168.1.124/mysql.php

通过上图,我们可以很明显的看出php已经解析mysql.php文件,并且也已经成功的连接mysql数据库。
烂泥:学习centos之快速搭建LNMP环境的更多相关文章
- 烂泥:学习ubuntu之快速搭建LNMP环境
本文由秀依林枫提供友情赞助,首发于烂泥行天下 现在公司使用的都是ubuntu系统,这几天由于个别项目需要,需要搭建一个LNMP环境.为了快速搭建这个环境,我使用是apt-get方式进行安装.具体的操作 ...
- 阿里云体验实验室 教你如何《快速搭建LNMP环境》
## 体验平台简介 面向开发者和中小企业打造的一站式.全云端的开发平台,打开浏览器就可以开发.调试.上线,所测即所得,并结合无服务器的模式,重新定义云原生时代的研发工作方法论.旨在降低开发者上手成本和 ...
- 【转载】Centos系统快速部署LNMP环境
PHP语言在Linux系统上运行的时候,需要在Linux系统上部署相应的Nginx.MySQL.PHP等环境,只有将这些环境参数都设置好,PHP相关应用程序才可正常运行,部署环境的方法有很多种,可手动 ...
- CentOS 7 上搭建LNMP环境
(转自美团云知识库Chris) 简介 LNMP是Linux.Nginx.MySQL(MariaDB)和PHP的缩写,这个组合是最常见的WEB服务器的运行环境之一.本文将带领大家在CentOS 7操作系 ...
- Docker快速搭建LNMP环境
一.使用Dockerfile制作镜像 前面的博客中已经介绍了如何基于容器制作镜像,此方法的原理是使用一个正在运行的容器,根据生产所需进行配置更改等操作后,使其满足生产环境,再将这个容器打包制作为镜像, ...
- 小白简单快速搭建lnmp环境(centos7)
本来想着自己搭建lnmp,由于php包下载不下来因此这次本人使用的lnmp一键包搭建的环境(很遗憾还没有php7.3.5)很详细并且方便快捷网址https://lnmp.org/install.htm ...
- centos7.2环境yum方式快速搭建lnmp环境nginx+mariadb+php-fpm
centos7.2环境yum方式安装nginx+mariadb+php-fpm 1.安装lnmp环境 安装epel源 yum install -y epel-release 安装 MySQL + PH ...
- centos 6.5搭建LNMP环境
1:查看环境: 1 2 [root@10-4-14-168 html]# cat /etc/redhat-release CentOS release 6.5 (Final) 2:关掉防火墙 1 [r ...
- vagrant快速搭建LNMP环境并且打包带走留着以后用
不多说废话,全文文字,照着输就没问题 vagrant下载 可以到VirtualBox的官网进行下载: https://www.virtualbox.org/wiki/Downloads vagran ...
随机推荐
- 锋利的jQuery--Ajax(读书笔记四)
1.表单值得序列化 <1>serialize() 例子: html: <form action=""> First name: <input type ...
- 用原始方法解析复杂字符串,json一定要用JsonMapper么?
经常采集数据,肯定会碰到解析字符串,包括整个页面的html,或者json以及一些不标准的json格式... 以前用json序列化,有时候需要实体类,有的时候没有,比较麻烦,听说可以用JsonMappe ...
- 后台管理UI的选择
最近要做一个企业的OA系统,以前一直使用EasyUI,一切都好,但感觉有点土了,想换成现在流行的Bootstrap为基础的后台UI风格,想满足的条件应该达到如下几个: 1.美观.大方.简洁 2.兼容I ...
- React.js入门必须知道的那些事
首先,React.js是facebook在2013年5月开源的一个前端框架,React不是一个MVC框架,它是构建易于可重复调用的web组件,侧重于UI, 也就是view层, React为了更高超的性 ...
- Unity3D中常用的数据结构总结与分析
来到周末,小匹夫终于有精力和时间来更新下博客了.前段时间小匹夫读过一份代码,对其中各种数据结构灵活的使用赞不绝口,同时也大大激发了小匹夫对各种数据结构进行梳理和总结的欲望.正好最近也拜读了若干大神的文 ...
- BaaS API 设计规范
上个月写了一个团队中的 BaaS API 的设计规范,给大家分享下: 目录 1. 引言... 4 1.1. 概要... 4 1.2. 参考资料... 4 1.3. 阅读对象... 4 1.4. 术语解 ...
- Redis分布式集群几点说道
原文地址:http://www.cnblogs.com/verrion/p/redis_structure_type_selection.html Redis分布式集群几点说道 Redis数据量日益 ...
- C# - 计时器Timer
System.Timers.Timer 服务器计时器,允许指定在应用程序中引发事件的重复时间间隔. using System.Timers: // 在应用程序中生成定期事件 public class ...
- FastSocket学习笔记~再说客户端与服务端的组成
废话多说 很久之前,我写过几篇FastSocket的文章,基本属于使用的方法,而缺乏对概念的总结讲解,而本讲就是弥补一下上几讲的不足,将核心的模块再说说,再谈谈,再聊聊! 首先FastSocket由C ...
- PHP基础知识第三趴
今天如约放送函数部分吧,毕竟预告都出了,"广电"也没禁我......