在CentOS 6上搭建LNMP环境
简介
LNMP是Linux、Nginx、MySQL和PHP的缩写,这个组合是最常见的WEB服务器的运行环境之一。本文将带领大家在CentOS 6操作系统上搭建一套LNMP环境。
本教程适用于CentOS 6.x版本。
在安装LNMP环境之前,您需要先对CentOS操作系统做一些初始化的工作,可以参考CentOS系统初始化设置。
安装Nginx
美团云的CentOS系统模板中配置了内网源,下载速度较快,推荐使用yum
安装Nginx:
sudo yum install nginx
按照提示,输入yes
后开始安装。安装完毕后,Nginx的配置文件在/etc/nginx
目录下。使用以下命令启动Nginx:
sudo service nginx start
您可以通过浏览器访问 http://<外网IP地址>
来确定Nginx是否已经启动。
最后我们通过chkconfig
命令将Nginx设置为开机启动:
sudo chkconfig nginx on
安装MySQL
我们可以使用yum
直接安装MySQL:
sudo yum install mysql-server
安装完成之后,执行以下命令重启MySQL服务:
sudo service mysqld restart
重启过程中会提示如何设置MySQL的root密码,我们按照提示进行操作:
sudo /usr/bin/mysql_secure_installation
这个脚本会经过一些列的交互问答来进行MySQL的安全设置。
首先提示输入当前的root密码:
Enter current password for root (enter for none):
初始root密码为空,我们直接敲回车进行下一步。
Set root password? [Y/n]
设置root密码,默认选项为Yes
,我们直接回车,提示输入密码,在这里设置您的MySQL的root账户密码。
Remove anonymous users? [Y/n]
是否移除匿名用户,默认选项为Yes
,建议按默认设置,回车继续。
Disallow root login remotely? [Y/n]
是否禁止root用户远程登录?如果您只在本机内访问MySQL,建议按默认设置,回车继续。 如果您还有其他云主机需要使用root账号访问该数据库,则需要选择n
。
Remove test database and access to it? [Y/n]
是否删除测试用的数据库和权限? 建议按照默认设置,回车继续。
Reload privilege tables now? [Y/n]
是否重新加载权限表?因为我们上面更新了root的密码,这里需要重新加载,回车。
完成后你会看到Success!
的提示,MySQL的安全设置已经完成。我们可以使用以下命令登录MySQL:
mysql -uroot -p
按提示输入root密码,就会进入MySQL的交互界面,说明已经安装成功。
MySQL安装完成后默认监听外网的3306端口,有一定的安全隐患,我们通过编辑MySQL的配置文件,将MySQL服务修改为监听内网的3306端口,这样就不会被外界探测到,编辑/etc/my.cnf
文件,在[mysqld]
中增加一行:
bind-address=10.128.129.21
需要将上面的10.128.129.21
替换成您的云主机的内网地址。内网地址可以从MOS控制台云主机列表中找到。然后重启MySQL服务使配置生效:
sudo service mysqld restart
最后我们使用chkconfig
命令将MySQL设置为开机启动。
sudo chkconfig mysqld on
安装PHP
我们可以直接使用yum
安装PHP:
sudo yum install php-fpm php-mysql
安装完成后我们将php-fpm启动:
sudo service php-fpm start
将php-fpm设置为开机启动:
sudo chkconfig php-fpm on
php安装完成之后,需要设置一下php session的目录:
sudo mkdir /var/lib/php/session/
sudo chown -R apache:apache /var/lib/php/session/
这时php-fpm已经安装完毕,但是现在需要配置一下Nginx,在/etc/nginx/conf.d
目录中新建一个名为php.conf
的文件,其内容为:
server {listen 8000;# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location ~ \.php$ {root /usr/share/php;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
}
然后执行以下命令使我们的配置生效:
sudo service nginx reload
以上我们配置了Nginx的8000端口用来测试,如果您在美团云控制台创建机器时选择了绑定防火墙,需要检查该防火墙是否允许8000端口,如果不允许的话,您可以在防火墙设置中新增防火墙,并关联到该主机。
我们在/usr/share/php
目录下新建一个名为phpinfo.php
的文件用来展示phpinfo信息,文件内容为:
<?php echo phpinfo(); ?>
我们从浏览器打开 http://<外网IP地址>:8000/phpinfo.php
,您就能看到phpinfo信息了,说明我们php环境已经部署成功:
验证PHP安装成功后,需要将此phpinfo.php
文件删除,线上环境尽量不要暴漏使用的软件版本及路径信息,以防被入侵者利用。
转自:https://blog.csdn.net/u010098331/article/details/51972282
同样推荐另一文: CentOS 上搭建 LNMP
在CentOS 6上搭建LNMP环境相关推荐
- centos 6.5 搭建lnmp环境
centos 6.5 搭建lnmp环境 建议安装顺序: mysql------->>编译php---->>编译nginx 最麻烦:编译php出各种错. 最简单:mysql 软件 ...
- 树莓派lnmp安装mysql_在树莓派上搭建LNMP环境
在树莓派3代B型上搭建Nginx+MariaDB+PHP7.0环境. Nginx 首先下载Nginx/PCRE/OpenSSL的源码,下载过程就不说了,PCRE要1.x版本,OpenSSL不要fips ...
- 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 ...
- 腾讯云服务器CVM(CentOS 7、Tencent Linux)手动搭建LNMP环境(linux+Nginx+Mariadb+PHP)
手动搭建云服务器运行环境就是喜欢折腾,如果觉得麻烦的网友可以使用LNMP镜像直接启动CVM实例,以便快速建站. 腾讯云服务器CVM(CentOS 7.Tencent Linux)手动搭建LNMP环境( ...
- 在 CentOS 7 上搭建 Jenkins + Maven + Git 持续集成环境
本文以部署 Spring boot + Maven 项目为例,使用码云作为代码托管仓库,在 CentOS 7 上搭建 Jenkins 持续集成环境. 1. 准备工作 1.1 安装 Java 环境 Je ...
- WIN10 vagrant和virtualbox虚拟机和一键搭建lnmp环境配置thinkphp虚拟主机
版本:win10系统 virtualbox:5.1.26 vagrant :1.9.7 centos 7.0 xshell/git 首先下载好对应版本的软件 配置vagrant和virtualbox ...
- docker搭建 LNMP 环境
一.准备镜像 安装完docker后,更换完镜像源(docker的安装十分简单自行百度即可) 打开/etc/docker目录下的daemon.json 添加以下内容 { "registry-m ...
- 安装虚拟机Ubuntu,搭建lnmp环境碰到的坑(二)
上一篇文章是基础的搭建ubuntu,安装好了之后就该搭建lnmp环境了,在此楼主也是第一次用nginx,如果有什么错误之后,请告知,万分感谢 搭建lnmp的一些基础命令在网上都可以查到,楼主只贴出自己 ...
- CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群
CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群 VMWare 安装CentOS 7 使用Xshell连接虚拟机 集群设置 安装JDK 1.8 SSH 免密登陆 安装ha ...
最新文章
- 《智能路由器开发指南》——2.3 使用VirtualBox部署
- 数据中心的未来:一体化无人值守
- java框内的值怎么同步_java并发编程使用锁进行数据同步操作一
- iBATIS存储过程
- linux java远程调试_idea远程linux代码调试
- HTML+CSS+JS实现 ❤️发光糖果泡泡动画特效❤️
- Qt与java web通过数据库实现数据展示同步
- 拼图登陆拼图二维码验证_如何使用拼图快速轻松地构建静态网站
- 兄弟 你们永远是我的大哥哥
- 周边pd是什么意思_肿瘤百问百答(六)关于胃癌的PD-1抗体治疗,你应该知道些什么?...
- 人脸识别Python教学
- 控制Tello无人机扫描条形码
- 使用Patch激活CleanMyPC时报错找不到文件
- 施耐德SoMachine Basic中存在高危漏洞(CVE-2018-7783),可读取目标系统上的任意文件...
- 视觉享受,兼顾人文观感和几何特征的字体「GitHub 热点速览 v.22.46」
- JS 大杂烩(持续更新)
- Num.01- java 之 mybatis 框架
- Eclipse报错: An error has occurred.
- Android存储数据---内容提供者ContentProvider
- 如何批量将Word转换成PDF?这几种方法都可以实现批量转换
热门文章
- 查询sql语句是否使用索引
- 【洛谷 - 快来签到】(数学,公式,溢出爆longlong的处理)
- 机器学习笔记(十二):聚类
- 计算机统考测试,计算机统考专业测试题.doc
- go-mysql查询单条数据_Golang 从 MySQL 数据库读取一条数据
- java上传png_java上传png图片出现红色背景
- MySQL 事务 | ACID、四种隔离级别、并发带来的隔离问题、事务的使用与实现
- leetcode1290. 二进制链表转整数 刷新认知,最简单算法题
- system函数的返回值和执行脚本的返回值
- Pytorch(3)-数据载入接口:Dataloader、datasets