时间:2022-12-19 11:20编辑:九州下载来源:www.wzjsgs.com
阿里云安装lnmpa
官方地址: https://lnmp.org/
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Aliyun/Amazon、Debian/Ubuntu/Raspbian/Deepin/Mint Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。
流程就是:安装lnmp,然后再安装pureftp,开放相应的端口,对各个应用服务器进行设置。
各个应用服务器进行设置:
对pureftp进行防火墙端口设置、阿里云安全组规则端口开放,用主动模式去连接ftp。
对mysql进行防火墙端口设置、阿里云安全组规则端口开放、设置root用户可远程ip连接。
对nginx进行防火墙端口设置、远程ip连接、阿里云安全组规则端口开放。
安装过程中,我选择安装 mysql 5.7,php 5.6,Jemalloc内存分配器
一些提示操作:可以查看/usr/lnmp/README,从lnmp1.4开始,不再安装pureftp,需要自己手动安装。见下文 安装PureFtp篇 。
搭建好lnmpa后,通过外网ip访问nginx,mysql,pure-ftp等有可能因端口问题访问失败,我们需要对防火墙进行设置。包括开启防火墙、开机自动启动防火墙、开放应用服务器对应的端口;
另附firewall的其他命令操作
开放了防火墙端口还不够,还需要再阿里云安全组规则页面进行再次开放端口。
我分别开放了21、22、80、88、3306、8080端口。
1、阿里云安全组规则,开放80端口
2、阿里云安全组规则,开放80端口
安装后, -h localhost 可以访问mysql,但是 -h 公网ip 无法正常登录mysql,提示2003错误。
网上很多说法是“因为centos7系统,即使关闭 firewalld,除了22端口,其余端口无法被外界访问,本地访问正常。”但经过测试,即使关了防火墙,访问其他端口时,未在==阿里云安全组规则==配置,也会被阿里云安全组规则进行挡住而无法访问。针对该问题,需要进行下面三步操作设置。
1、打开防火墙,然后开放防火墙3306端口
2、阿里云安全组规则,开放3306端口
3、mysql授权任何ip都可以远程该mysql服务器
默认LNMP是不安装FTP服务器的,如需要FTP服务器: https://lnmp.org/faq/ftpserver.html
我选择安装pureftpd ,当然也可以不按照pureftpd,直接使用xshell的xftp去操作。
这个ftp虚拟用户为 系统用户 下的虚拟用户。就是说,你通过ftp客户端登录后上传的文件的所有者(权限)为该系统用户。比如,将ftp用户test绑定到系统用户cjf下,那么登录ftp后,上传的服务器的文件所有者是cjf。这样就可以不用给你该系统用户的登录密码,免得你登录服务器去干其他坏事。
解决方法:更改Filezilla设置,编辑-设置-连接-FTP-被动模式,将“使用服务器的外部ip地址来代替”改为“回到主动模式”即可。 ----------就是尝试==被动模式==不行的话,就用==主动模式==去连接。
以前总使用 ftp 公网ip ,登录后操作总是提示227,按网上教程说,把 ftp> passive 关闭被动模式,但还是无法正常使用,这是因为在 ftp 公网ip 会因为==ForcePassiveIP没开启==,==安全组端口没设置==而出现被动模式阻塞。相比 ftp 局部网内部ip 这种方式,更麻烦,且服务器开放了更多的端口,更加不安全。不建议这种操作。
如果你不想了解什么是主动模式、什么是被动模式的话,就记住:
关闭passive(不用操作,只是补充知识点)
主动模式和被动模式:
【内网穿透笔记
linux中安装了lnmp,然后多了www和mysql用户,怎么登录?
这是应用程序自己创建出来的,这两个没有家目录,并且在/etc/passwd里的没有登录权限的。
专业数据统计,95%的用户会因为[不安全]提示而放弃访问,从而给网站造成用户流失。问题就出在不安全的HTTP 明文传输协议上。2018年2月初,谷歌旗下Chrome浏览器宣布“封杀”HTTP协议的网站,并将这些网站标示为“Not Secure”(不安全)。
2023-03-03 21:141、do-while语句是一种后测试循环语句,即循环体中的代码执行后才会对退出条件进行求值。2、循环体内的代码至少执行一次。do-while的语法如下:do{ statement }while(expression)下面是一个例子:letxhs=0 do{ xhs+=2 }while(xhs<10)在上面的
2023-02-26 12:191、while语句是一种先测试循环语句,即先检测退出条件,再执行循环体内的代码。2、while循环体内的代码有可能不会执行。下面是 while 循环的语法:while(expression){ statement }实例leti=0 while(i<10){ i+=2 }在这个例子中,变量 xhs 从 0 开
2023-02-26 12:181、for语句也是先测试语句,只不过增加了进入循环之前的初始化代码.以及循环执行后要执行的表达式(loop-expression),语法如下:for(initialization;expression;loop-expression){ statement }下面是一个用例:letxhsLength=10 for(letxhs=0;xh
2023-02-26 12:17说明1、for-of语句是一种严格的迭代语句,用于遍历可迭代对象的元素。2、for-of循环将按照可迭代对象的next()方法产生值的顺序迭代元素。关于可迭代对象,请参考ES6系列的Iterator。如果尝试迭代的变量不支持迭代,for-of语句就会出错。语法:只
2023-02-26 12:16说明1、switch语句可用于所有的数据类型(在许多语言中,它只能用于数值),因此可以使用字符串甚至对象。2、条件值不一定是常量,或者是一个变量或者一个表达式。实例switch('helloxhsRookies'){ case'hello'+'xhsRookies&#
2023-02-26 12:15发布日期:2022-10-29人气:641
发布日期:2022-10-10人气:555
发布日期:2022-09-29人气:335
发布日期:2022-09-04人气:311
发布日期:2023-01-16人气:226
发布日期:2022-10-02人气:149
发布日期:2022-11-07人气:145