高效LNMP服务器与域名快速配置指南

更新:11-16 名人轶事 我要投稿 纠错 投诉

需要5GB以上硬盘剩余空间,MySQL 5.7、MariaDB 10至少9GB剩余空间

需要128MB以上内存(128MB小内存VPS、Xen需要有SWAP、OpenVZ必须至少有128MB vSWAP或突发内存),请注意不要使用内存小的64位系统!

安装MySQL 5.6或5.7和MariaDB 10需要超过1G的内存!

VPS或服务器必须连接互联网且必须设置网络源,而不是光盘源,并且VPS/服务器DNS必须正常!

Linux是区分大小写的,输入命令时请注意!

CentOS 5、Debian 6及之前版本官网已结束支持,无法使用!

LNMP一键安装包V1.4已安装在Vultr、傲游主机、Bricklayer、vps2ez、OneAsiaHost、DigitalOcean、LocVPS、Linode、DiaHosting、KVMLA、精文互联网、RamNode、BuyVM、快易互联、80VPS、阿里云等VPS 已在CentOS 6-7、RHEL 6-7、Fedora 21-23、Debian 7-9、Ubuntu 10.04-17.04 的32 位和64 位系统上进行了测试(CentOS 5、Debian 6 官网)并且之前的版本已经结束支持无法使用,在Debian9上需要选择Apache版本2.4.26或以上。

安装步骤:

1、使用putty或者类似的SSH工具登录VPS或者服务器;

登录后,运行:screen -S lnmp

如果提示screen: command not find 不存在,可以执行:yum install screen 或apt-get install screen 安装。详情请参见屏幕教程。

2、下载并安装LNMP一键安装包:

您可以选择使用下载版(推荐美国及海外VPS或空间较小的用户)或完整版(推荐国内VPS,国内用户可以在下载中找到国内下载地址进行替换)。两者没有什么区别,只不过完整版安装包中提前放置了一些需要的源代码文件。

安装LNMP稳定版

wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz tar zxf lnmp1.4.tar.gz cd lnmp1.4 ./install.shlnmp

默认情况下不需要写lnmp。如果需要安装LNMPA或LAMP,只需将./install.sh后面的参数替换为lnmpa或lamp即可。如果需要更改网站和数据库目录,请先修改安装包目录下的lnmp.conf文件。

如果提示wget: command not find,请使用yum install wget或apt-get install wget命令安装。

如果下载速度慢或无法下载,请更换其他下载节点。详情请参阅下载页面。 LNMP下载节点具体更换方法。

运行上述LNMP安装命令后,会出现如下提示:

目前,提供了更多的MySQL和MariaDB版本,以及不安装数据库的选项。需要注意的是,MySQL 5.6、5.7和MariaDB 10必须选择1G以上内存的更高配置!

在对应的MySQL或MariaDB版本前面输入序列号,然后按回车进行下一步。

需要设置MySQL root密码(不输入按回车就会设置为root)。如果输入有误,需要删除,可以按住Ctrl加Backspace键删除(某些情况下只需要Backspace键即可)。输入后按Enter键进行下一步,如下图:

询问是否需要启用MySQL InnoDB。默认情况下启用InnoDB 引擎。一般建议启用并回车或输入y。如果确定不需要该引擎,可以输入n。输入完成后,按Enter键进入下一步。

注意:选择PHP7等更高版本时,需要确认是否与您的程序兼容。

输入你要选择的PHP版本的序列号,回车进入下一步,选择是否安装内存优化:

可以选择不安装,Jemalloc或者TCmalloc,输入对应的序列号并回车。如果直接回车,默认不安装。

如果是LNMPA或者LAMP也会提示

“请输入管理员邮箱地址:”,需要设置管理员邮箱地址,报错时会显示在错误页面上。

然后选择Apache版本

根据提示输入对应版本前面的序列号,然后按“Enter”。

提示“Press any key to install.or Press Ctrl+c to cancel”后,按Enter键确认并开始安装。

LNMP脚本将自动安装并编译Nginx、MySQL、PHP、phpMyAdmin和Zend Optimizer软件。

安装时间可能从几十分钟到几个小时不等,主要受机器配置的网络速度等因素影响。

3.安装完成

如果显示Nginx: OK、MySQL: OK、PHP: OK

并且Nginx、MySQL和PHP都在运行,并且端口80和3306存在。如果安装的时候Install lnmp V1.4完成了!好好享受。出现提示,则说明安装成功。

有些系统可能会卡在Install lnmp V1.4 Completed!好好享受。它不会自动退出。您可以使用Ctrl+c 退出。

安装完成后就可以开始使用了。点击教程添加虚拟主机。添加虚拟主机后,可以使用sftp或ftp服务器上传网站代码,将域名解析为VPS或服务器的IP,解析生效即可使用。

4.安装失败

如果出现类似上图的提示,则其中一个没有安装成功,说明安装失败!您需要使用winscp或其他类似工具下载/root目录下的lnmp-install.log,在LNMP支持论坛上发帖并注明您的系统发行版名称和版本号、32位或64位等,并更改lnmp - install.log被压缩并作为附件上传到论坛。我们会通过日志发现错误并提供相应的解决方案。

域名配置:

LNMP添加、删除虚拟主机及伪静态使用教程

作者:lices 发布时间:2013年4月16日类别:常见问题

一般每个虚拟主机都是一个网站,网站一般都是通过域名来访问的。

本教程适用于LNMP 1.2+。各个版本的添加过程基本相似。只需按照提示操作即可。 1.4版本增加了SSL选项,允许您选择Letscrypt并自带SSL证书、多个PHP版本等功能。 1.3版本增加了FTP、数据库创建等功能。LNMP 1.4的跨目录也在fastcgi.conf中控制。 LNMP 1.2的防交叉目录也由原来在php.ini中的设置控制,移至网站根目录下的.user.ini。

LNMP 1.1及之前版本使用/root/vhost.sh添加虚拟主机。

LNMP 1.2开始使用lnmp命令进行管理。详情请参阅更新记录。

虚拟主机管理基本命令介绍:lnmp vhost {add|list|del}

以前版本的lnmp可以升级到新版本的lnmp管理脚本,升级到1.4教程

##添加网站(虚拟主机)##

如果输入有错误需要删除,可以按住Ctrl并按Backspace键删除。

执行:lnmp vhost add 出现如下界面:

在这里您需要输入您要添加的网站的域名。我们添加了域名www.vpser.net 作为示例。如上图所示,输入域名www.vpser.net,然后回车。

这里询问是否添加更多域名,直接输入要绑定的域名即可。这里我们还要绑定vpser.net。多个域名之间用空格分隔。如果不需要绑定其他域名,直接回车即可。

(注:带www和不带www的域名是不同的,带www和不带www的域名如果想访问同一个网站,需要同时绑定)。

接下来需要设置网站的目录

如果网站目录不存在,则会创建该目录。也可以输入已有的目录或者要设置的目录(注意如果要输入的话必须是完整路径,即以/开头的完整路径!)。如果直接按Enter 而不输入,将使用默认目录:/home/wwwroot/域名

伪静态可以让URL更加简洁,有利于SEO。如果程序支持并且需要设置伪静态,例如启用输入y,禁用输入n并回车(注意LNMPA或LAMP模式没有此选项!)。

默认有discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、dedecms、drupal,常用Nginx伪- ecshop、shopex等静态配置文件直接输入名称即可使用。如果是二级目录,需要与配置文件中二级目录的名称对应。

这一步是设置日志。例如,如果启用日志,则输入“y”,如果不启用日志,则输入“n”,然后按“Enter”。

如果启用,则需要输入要设置的日志名称。默认日志目录是:/home/wwwlogs/。默认文件名为:域名.log。按回车确认后,会询问是否添加数据库和数据库用户。

如果需要添加数据库输入y,则不要添加数据库输入n并按Enter键。

如果要添加,需要先验证MySQL root密码(注意:输入的密码不会显示)

提示输入数据库名称:后,输入要创建的数据库名称。要创建的数据库的用户名将与数据库的名称相同。按Enter 确认。

出现提示Please Enter password for mysql用户数据库名:时,输入要设置的密码并回车确认。

如果您安装了FTP服务器,系统会询问您是否添加FTP帐户。

如果需要添加输入y,请不要添加输入n 并按Enter。

当提示“Enter ftp account name:”时,输入要创建的FTP帐户名称,按“Enter”键确认。

提示输入FTP账号FTP账号:的密码后,输入要设置的密码,按回车确认。

接下来是1.4中新添加的SSL功能

如果需要添加输入y,请不要添加输入n 并按Enter。

如果您选择添加SSL,则会出现提示

有两种选择。方案一是使用自己准备的SSL证书和密钥。

出现提示时,请输入SSL 证书文件的完整路径,输入所需SSL 证书的完整路径和文件名,然后按Enter 确认。

出现提示Please Enter full path to SSL Certificate Key file: 时,输入密钥文件的完整路径和文件名,然后按Enter 确认。

方案二是使用免费SSL证书提供商Letscrypt的证书自动生成SSL证书等信息。

您需要输入电子邮件地址并按Enter 确认。

提示Press any key to start create virtul host.后,按Enter键确认,虚拟主机就创建完成了。

如果添加成功,会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息,如下图:

##伪静态管理##

LNMPA或者LAMP可以直接使用网站根目录下载.htaccess来设置伪静态规则(具体规则可以去程序官网谷歌百度查找),但是在LNMP、Nginx下伪静态规则需要使用。

伪静态可以随时添加或删除。如果添加虚拟主机后忘记或者没有添加伪静态,可以通过修改配置文件来添加伪静态。

虚拟主机配置文件位于:/usr/local/nginx/conf/vhost/域名.conf

伪静态规则文件需要放在/usr/local/nginx/conf/下。

要编辑虚拟主机配置文件,您可以使用vi、nano或winscp。后两种工具对于新手来说更容易使用。

例如,打开我们之前添加的虚拟主机后,会显示前半部分的配置,如下:

在root /home/wwwroot/www.vpser.net; 行下方添加:

包括wordpress.conf;

上面的wordpress.conf是一个伪静态文件。如果需要其他伪静态文件,请自行创建一个并上传到/usr/local/nginx/conf/并包含pseudo-static.conf;添加后保存并执行:/etc/init.d d/nginx重启即可生效。如果报错,可能是添加错误或者伪静态规则错误。

##上传网站程序##

如果您已经安装了FTP服务器,则可以直接使用ftp客户端使用您的FTP信息登录并上传网站或使用sftp等软件上传网站,设置相关权限并开始安装。

网站上传后,建议执行:chown www:www -R /path/to/dir 设置网站目录的权限,将/path/to/dir替换为您的网站目录。

出于安全考虑,您可以删除不需要PHP 运行的上传文件等目录的执行权限。参考:http://www.vpser.net/security/lnmp-remove-nginx-php-execute.html

##现有虚拟主机添加ssl证书启用https##

要将https站点添加到现有虚拟主机中,可以执行:lnmp ssl add命令添加ssl证书。目前有两种方式:一种是使用自己的ssl证书,另一种是使用Let"s Encrypt的免费证书。添加过程与之前添加虚拟主机的过程相同,只是多了一个步骤,需要填写SSL证书和密钥或者直接选择Let"sEncrypt自动生成证书。

如果您从版本1.*升级到1.4或更改版本,则需要参考:https://lnmp.org/faq/upgrade1-4.html中的说明。如果有提示不安全或者不显示绿色小锁,上面链接里也有说明。

##列出网站(虚拟主机)##

执行:lnmp 虚拟主机列表

##删除网站(虚拟主机)##

执行:lnmp vhost del

删除网站时,将首先列出现有的虚拟主机。按照提示输入要删除的虚拟主机的域名,按Enter键确认。

这里我们只删除虚拟主机配置文件,网站文件不会被删除,需要您自己删除。

在LNMP 1.2下,需要执行:chattr -i /网站目录/.user.ini,才能删除网站目录。

当您执行chown 或chmod 对网站目录的所有者、所属组或权限进行操作时,可能会提示chown: CHANGING POLICY OF `/home/wwwroot/default/.user.ini": Operation not allowed,不需要注意了,如果你有强迫症的话可以参考之前的chattr -i操作。

##默认网站(虚拟主机)##

LNMP默认网站配置文件:/usr/local/nginx/conf/nginx.conf

LNMPA默认网站配置文件:/usr/local/nginx/conf/nginx.conf和/usr/local/apache/conf/extra/httpd-vhosts.conf

LAMP默认网站配置文件:/usr/local/apache/conf/extra/httpd-vhosts.conf

##防跨目录设置##

LNMP 1.1 及之前版本使用php.ini 中的open_basedir 设置

LNMP 1.2及更高版本的防跨目录功能使用.user.ini。该文件位于网站的根目录中。您可以修改.user.ini中open_basedir的值来设置访问受限的目录,或者删除该目录以去除防跨目录功能。设置。

.user.ini 文件无法直接修改。如果要修复或删除,需要执行:chattr -i /网站目录/.user.ini

可以使用winscp文件管理、vim编辑器或者nano编辑器进行修改。

要删除它,只需运行rm -f /website directory/.user.ini。

修改完成后执行:chattr +i /网站目录/.user.ini

.user.ini不需要重启,一般5分钟左右生效。您也可以重新启动php-fpm 以立即生效。

如果要更改网站目录,必须按照上面的方法修改防跨目录设置,否则肯定会报错!

在LNMP 1.4上,如果不想使用防跨目录或者修改.user.ini的防跨目录目录,还需要更改/中的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/usr/local/nginx/conf/fastcgi.conf :/proc/";在该行前添加#或删除新行,需要重新启动nginx。

在LNMP 1.4上,也可以直接使用lnmp1.4/tools/目录下的./remove_open_basedir_restriction.sh来删除。

在Thinkphp、codeigniter、Laravel等框架中,网站目录一般都在public下,但是public下的程序需要跨目录来调用public上层目录下的文件。由于LNMP默认不允许跨目录访问,所以需要去掉防止跨目录访问的设置。有时这些框架程序提示500错误,也可能是这个问题造成的。

LNMPA或LAMP模式1.2以上版本的防跨目录设置使用对应的apache虚拟主机配置文件中的php_admin_value open_basedir参数(如果是通过lnmp管理工具添加的,则该文件为/usr/local/apache/conf/vhost/域名.conf)设置。如果不需要设置,可以在前面加#注释,或者自己修改目录限制。

重启apache即可生效。

##路径信息设置##

LNMP上各版本pathinfo的设置基本相同:

在lnmp v1.1上,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf)

去掉#include pathinfo.conf前面的#,注释掉try_files $uri=404;前面的#。

在1.2和1.3上,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf)

替换包含enable-php.conf;包含enable-php-pathinfo.conf;

修改pathinfo需要重启nginx才能生效。

##数据库管理##

对于1.3及以上版本,添加虚拟主机时可以选择创建数据库,也可以单独使用lnmp database add根据提示添加数据库。添加的用户名和数据库名相同。

添加数据库命令:lnmp database add

编辑数据库用户密码命令:lnmp database edit

删除数据库命令:lnmp database del

关于高效LNMP服务器与域名快速配置指南到此分享完毕,希望能帮助到您。

用户评论

一个人的荒凉

这也太方便了吧!以前搞 LNMP 总是那么麻烦。

    有20位网友表示赞同!

々爱被冰凝固ゝ

终于有一个一键部署的解决方案了,不用再自己折腾那么多步骤了。

    有5位网友表示赞同!

无寒

对于新手来说简直是福音!可以很快上手。

    有11位网友表示赞同!

最怕挣扎

域名配置也不需要多余的操作了吗?这也太省事了!

    有13位网友表示赞同!

不相忘

有没有具体的教程?感觉很有用啊。

    有11位网友表示赞同!

羁绊你

我正在计划搭建一个博客,这个功能很吸引人,我要试试看!

    有5位网友表示赞同!

安陌醉生

部署速度怎么样?会不会影响网站访问体验?

    有13位网友表示赞同!

揉乱头发

这个一键配置是完全自动的吗?还是需要一些基础操作?

    有17位网友表示赞同!

oО清风挽发oО

支持哪些域名后缀呢?我的域名是 .com 的。

    有12位网友表示赞同!

旧事酒浓

LNMP 稳定性如何?有没有提供相应的售后保障?

    有20位网友表示赞同!

龙卷风卷走爱情

安全性怎么样?能保证我的网站信息安全吗?

    有12位网友表示赞同!

她最好i

这个功能免费吗?如果付费的话,具体价格是多少?

    有13位网友表示赞同!

敬情

我听说 LNMP 最好还是手动配置一套完整的环境吧?你的看法呢?

    有18位网友表示赞同!

温柔腔

使用这个工具后,是否能像云端服务一样方便地扩容和缩减服务器资源?

    有12位网友表示赞同!

从此我爱的人都像你

对于开发人员来说,使用这个功能会不会更快速地把项目上线?

    有13位网友表示赞同!

滴在键盘上的泪

如果遇到问题,怎么寻求帮助呢?

    有6位网友表示赞同!

作业是老师的私生子

除了 LNMP,你们还支持其他平台搭建吗?

    有20位网友表示赞同!

若他只爱我。

能不能分享一下你们的官方网站和相关资料链接?

    有5位网友表示赞同!

发呆

我想了解更多关于这个一键配置功能的详细信息。

    有14位网友表示赞同!

【高效LNMP服务器与域名快速配置指南】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:系统推送集成(十二):本地与远程通知编程攻略之Legacy信息详解 下一篇:探寻传统年节的独特魅力——年味