Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)
一、
首先要解释一下,什么是LNMP,LNMP起源于LAMP,LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的缩写,这里将Web服务端的Apache替换成了资源消耗更少,更稳定的Nginx,所以LNMP就是Linux+Nginx+Mysql/MariaDB+Perl/PHP/Python的缩写;
引用LNMP一键安装包网站的简介来简单的介绍一下,为什么要选择LNMP
LNMP一键安装包是什么?
我们为什么需要它?
编译安装需要输入大量的命令,如果是配置生产环境需要耗费大量的时间。
不会Linux的站长或Linux新手想使用Linux作为生产环境……
它有什么优势和功能?
无需一个一个的输入命令,无需值守,编译安装优化编译参数,提高性能,解决不必要的软件间依赖,特别针对配置自动优化。
支持自定义Nginx、PHP编译参数及网站和数据库目录、支持生成LetseEcrypt证书、LNMP模式支持多PHP版本、支持单独安装Nginx/MySQL/MariaDB/Pureftpd服务器,同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件Redis/Xcache等的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。
如何获取它?
你可以自由下载 并使用它在VPS或独立服务器上,做为真正的生产环境或测试环境。
我们为什么采用LNMP这种架构?
采用Linux、PHP、MySQL的优点我们不必多说。
Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,已经在一些俄罗斯的大型网站上运行多年,目前很多国内外的门户网站、行业网站也都在是使用Nginx,相当的稳定。
Nginx相当的稳定、功能丰富、安装配置简单、低系统资源
这里我需要说一下,Nginx与Apache想比较,在同样条件下,Nginx占用的系统资源会更小,可承载并发数更多,但是Nginx的伪静态规则设置相比较IIS和Apache要略复杂;
二、安装
安装很简单,一条命令就足够了:wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh
期间会让你设置mysql密码,PHP版本号,是否启用日志记录等等;
当出现Install lnmp V1.4 completed! enjoy it.的话,说明已经安装成功。
三、添加网站
输入:lnmp vhost add
进入添加虚拟主机命令,这是首先输入你的主域。例:91wuxia.com(不要带www)
第二部创建虚拟主机文件夹,如果输入的是91wuxia.com。默认提示创建www.91wuxia.com的文件夹;
(注:该文件夹创建好之后存放位置是/home/wwwroot/www.91wuxia.com)
然后提示是否添加伪静态规则,可以选择默认的,如果你的程序需要自定义,那么随便写一个自己知道的名字就可以了,之后再去添加规则,但是要以.conf为后缀的文件名,例如91wuxia.conf
当所有选项都选完后,回车确认便会开始创建虚拟主机。
添加成功会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息;
如果是本地调试,你访问localhost,打开的并不是你创建是/home/wwwroot/www.91wuxia.com文件夹目录,打开的是/home/wwwroot/default下的文件,当然你可以打开localhost/phpmyadmin进行数据库管理;
如果本地调试的话,你需要做hosts将自己的ip进行劫持,也就是域名重定向,具体方法如下:
打开C:\WINDOWS\system32\drivers\etc,最好用notepad++打开,记事本保存容易出现错误;
127.0.0.1 域名
例:
127.0.0.1 www.91wuxia.com
中间是空格,如果有子域名,另起一行,一样格式即可;
如果是远程服务器/VPS/虚拟主机,将域名绑定你的解析地址(IP/cname),直接访问就可以了;
四、神秘的.user.ini文件和chattr命令
当所有的生成环境都搭建完成之后,准备上传程序时,你会发现没有读写权限;
切换root,利用chmod -R 777给文件夹授权时,产生错误提示;
这是神秘的.user.ini出现了,你会发现万能的连自己都能删除自己的root权限,都无法强行删除.user.ini文件;
多番查找,chattr -i 解锁命令才找到
输入chattr -i /网站路径/.user.ini
这里的路径可以是相对的,也可以是绝对的,新手实在不懂可以使用绝对路径,例:
chattr -i /home/wwwroot/www.91wuxia.com/.user.ini
你只需要把www.91wuxia.com替换成自己的域名文件夹名称就可以了;
然后再进行chmod -R 777 /文件夹路径/ 进行授权,现在可以全部控制该文件夹了
记得输入chattr +i /网站路径/.user.ini,再锁上。
五、伪静态规则
千辛万苦的将web架设起来了,也可以访问了,看看栏目页,嗯?怎么是404无法访问?
对了,之前说了伪静态还没有设置
伪静态规则存放位置是:/usr/local/nginx/conf/vhost/域名.conf
这里是你虚拟主机的配置文件,如果你有其他二级域名需要绑定,就要在这个里面添加,默认是不会绑定手机版的二级域名,例如m.91wuxia.com,这个域名是需要自己手动添加进去的
还记得刚才说的,在添加虚拟主机时,命名的伪静态规则文件么,对,就是91wuxia.conf,这个配置文件存放在上级conf目录下,该目录下还有很多默认网站的伪静态规则,例如dede,diguo,dz等等
直接vi /usr/local/nginx/conf/91wuxia.conf 将伪静态规则复制进去保存即可(vi的操作命令请自行百度一下)
重启Nginx
重启命令:/etc/init.d/nginx restart
也可以用lnmp的命令:
lnmp stop 关闭
lnmp start 再次开启,实现重启
好了,这就是我自己在VPS上架设web网站的整个流程,以及遇到的一些问题;
Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)的更多相关文章
- Linux系统上LNMP服务器的搭建
一.确保登录用户权限为root 如果没有root权限: su root 切换到root用户,但不切换环境变量: 或者 su - root 完整地切换到root用户环境. 二.开始下载并安装LNMP( ...
- Linux系统之LNMP及nginx反向代理实现
1.编译安装LNMP,并安装wordpress 首先准备环境,编译安装LNMP可以是多台主机,也可以是单台主机,把nginx,mysql,php都集中安装在一个主机上:我这里以一台主机为例吧!! 一. ...
- 将一个Linux系统中的文件或文件夹复制到另一台Linux服务器上(scp的使用)
一.复制文件: (1)将本地文件拷贝到远程scp 文件名 用户名@计算机IP或者计算机名称:远程路径(2)从远程将文件拷回本地scp 用户名@计算机IP或者计算机名称:文件名 本地路径 二.复制文件夹 ...
- CentOS6.5下源码安装多个MySQL实例及复制搭建
多实例安装本节是在CentOS6.5下源码安装MySQL5.6.35的基础上,在同一台机器增加一个MySQL实例.参考Centos中安装多个mysql数据的配置实例,安装目录为/usr/local/m ...
- lnmp一键安装包卸载mysql,重新安装报错mysql57-community-release conflicts with mysql-community-release-el6-5.noarch
环境:CentOS Linux release 7.6.1810 lnmp1.5 独立下载mysql仓库 wget -i -c http://dev.mysql.com/get/mysql57-com ...
- VUE3 之 使用标签实现动画与过渡效果(下) - 这个系列的教程通俗易懂,适合新手
1. 概述 毛毛虫效应: 有这样一个实验,将许多毛毛虫放在一个花盆边缘,使它们首尾相接,围成一个圈.然后在离花盆很近的地方撒了一些毛毛虫的食物. 此时,毛毛虫并不会向食物的方向爬去,而是在花盆边缘,一 ...
- Linux下-LNMP环境搭建博客网站(全过程)
通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...
- Linux系统下安装配置JDK(rpm方式及tar.gz方式)
以前都是在Windows环境进行开发的,最近因工作需要:学习在Linux系统下搭建开发环境,自此记录搭建过程,以方便查阅. 本文借鉴了 Angel挤一挤 .小五 两位的博客. 准备材料: JDK下载链 ...
- 【夯实Mysql基础】MySQL在Linux系统下配置文件及日志详解
本文地址 分享提纲: 1. 概述 2. 详解配置文件 3. 详解日志 1.概述 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下:在Linux下叫my.cnf,该文件位于 ...
随机推荐
- python网络编程(进程与多线程)
multiprocessing模块 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程. multiproce ...
- 简单易用的IT运维服务器管理程序
程序修改历史: 2012.02.04 v1.0 leopku 2012.02.09 v1.1 oldboy(老男孩) QQ:31333741 MAIL:oldboy521@gmail.com 本软件由 ...
- 《并行程序设计导论》——MPI(Microsoft MPI)(6):并行排序算法
=================================版权声明================================= 版权声明:原创文章 禁止转载 请通过右侧公告中的“联系邮 ...
- <button>与<input type="button">的区别
一.定义和用法 <button> 标签定义的是一个按钮. 在 button 元素内部,可以放置文本或图像.这是<button>与使用 input 元素创建的按钮的不同之处. 二 ...
- 【笔记】npm 安装 vue-cli
最近完成了慕课网的 高仿饿了么webApp 课程,对于vue 的认识有了更深一步的认识,但是其脚手架 vue-cli 的安装流程还是有点懵,于是今天重新试了一遍加深认识 网上参考过一些有用的教程在这里 ...
- 自动化测试框架Selenium工作原理
本文所讲的Selenium是指Selenium Webdriver Selenium WebDriver与RC的功能相同,并且包含原始的1.x绑定.它涉及语言绑定和单个浏览器控制代码的实现.这通常被称 ...
- linux_目录结构
目录的作用是什么? 1. 归档和分类 2. 区分同名文件 什么是FHS? 目录层次标准,linux目录规范标准 linux系统目录有哪些特点? 1. 逻辑上所有目录都在 / 目录下,根目录是所有目录的 ...
- CSS3 动画及过渡详解
今天开始我们一起来学习有关于CSS3制作动画的几个属性:变形(transform).过渡(transition)和动画(animation)等CSS3技术. 首先我们先来了解一下变形(transfor ...
- linkin大话设计模式--常用模式总结
linkin大话设计模式--常用模式总结 一,常用设计模式定义 Abstract Factory(抽象工厂模式):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. Adapter( ...
- WPF笔记(2.4 Grid)
第一章已经简单介绍过这个容器,这一节详细介绍.Grid一般是用表格(Grid.Row 和Grid.Column )的,比StackPanel更细致一些,但是,这么玩很麻烦,先横着竖着定义一大堆,然后把 ...