{"id":13391002,"url":"https://github.com/lnmpkvemail/lnmp","last_synced_at":"2025-03-13T15:33:02.276Z","repository":{"id":40406155,"uuid":"1134457","full_name":"lnmpkvemail/lnmp","owner":"lnmpkvemail","description":"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程序。","archived":false,"fork":false,"pushed_at":"2024-06-01T04:27:02.000Z","size":1644,"stargazers_count":67,"open_issues_count":2,"forks_count":90,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-29T16:58:32.392Z","etag":null,"topics":["apache-php-mysql","lamp","lemp","lnmp","lnmpa","mariadb","mysql","nginx","nginx-apache-php","nginx-php-mariadb","nginx-php-mysql"],"latest_commit_sha":null,"homepage":"https://lnmp.org","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lnmpkvemail.png","metadata":{"files":{"readme":"readme.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"License","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2010-12-03T07:20:24.000Z","updated_at":"2024-10-27T10:59:00.000Z","dependencies_parsed_at":"2023-02-08T05:17:20.480Z","dependency_job_id":"79e40e53-6fdd-47c2-a99b-0e1bcf13c6f2","html_url":"https://github.com/lnmpkvemail/lnmp","commit_stats":null,"previous_names":["lnmpkvemail/lnmp","licess/lnmp"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnmpkvemail%2Flnmp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnmpkvemail%2Flnmp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnmpkvemail%2Flnmp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnmpkvemail%2Flnmp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lnmpkvemail","download_url":"https://codeload.github.com/lnmpkvemail/lnmp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243433051,"owners_count":20290197,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache-php-mysql","lamp","lemp","lnmp","lnmpa","mariadb","mysql","nginx","nginx-apache-php","nginx-php-mariadb","nginx-php-mysql"],"created_at":"2024-07-30T14:01:56.691Z","updated_at":"2025-03-13T15:33:01.905Z","avatar_url":"https://github.com/lnmpkvemail.png","language":"Shell","funding_links":[],"categories":["Shell","Shell (473)"],"sub_categories":[],"readme":"# LNMP一键安装包 - Readme\n\n## LNMP一键安装包是什么?\n\nLNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Alibaba/Amazon/Mint/Oracle/Rocky/Alma/Kali/UOS/银河麒麟/openEuler/Anolis OS Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。\n\n## LNMP一键安装包有哪些功能？\n\n支持自定义Nginx、PHP编译参数及网站和数据库目录、支持生成Let's Ecrypt/ZeroSSL/BuyPass免费SSL证书、支持无人值守、LNMP模式支持多PHP版本、支持单独安装Nginx/MySQL/MariaDB/Pureftpd服务器，同时提供一些实用的辅助工具如：虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常见PHP模块exif、fileinfo、ldap、bz2、sodium、imap和swoole的一键安装、常用缓存组件Redis/Xcache等的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。\n\n* LNMP官网：\u003chttps://lnmp.org\u003e\n* 作者: licess \u003cadmin@lnmp.org\u003e\n* 问题反馈\u0026技术支持论坛：\u003chttps://bbs.lnmp.com/forum-25-1.html\u003e\n* 打赏捐赠：\u003chttps://lnmp.org/donation.html\u003e\n\n## LNMP安装\n\n安装前确认已经安装wget命令，如提示wget: command not found ，使用`yum install wget` 或 `apt-get install wget` 命令安装。\n为防止掉线等情况，建议使用screen，可以先执行：screen -S lnmp 命令后，再执行LNMP安装命令：\n`wget http://soft.lnmp.com/lnmp/lnmp2.1.tar.gz -cO lnmp2.1.tar.gz \u0026\u0026 tar zxf lnmp2.1.tar.gz \u0026\u0026 cd lnmp2.1 \u0026\u0026 ./install.sh {lnmp|lnmpa|lamp}`\n\n如断线可使用`screen -r lnmp` 恢复。**详细安装教程参考：\u003chttps://lnmp.org/install.html\u003e**\n\n## 常用功能说明\n\n**以下操作需在lnmp安装包目录下执行，如lnmp2.1**\n\n### 自定义参数\nlnmp.conf配置文件，可以修改lnmp.conf自定义下载服务器地址、网站/数据库目录及添加nginx模块和php编译参数；不论安装升级都会调用该文件里的设置(如果修改了默认的参数建议备份此文件)；\n\n### FTP服务器\n执行：`./pureftpd.sh` 安装，可使用 `lnmp ftp {add|list|del}` 进行管理。\n\n### 升级脚本：\n执行：`./upgrade.sh` 按提示进行选择\n也可以直接带参数：`./upgrade.sh {nginx|mysql|mariadb|php|phpa|m2m|phpmyadmin}`\n* 参数: nginx   可升级至任意Nginx版本。\n* 参数: mysql   可升级至任意MySQL版本，MySQL升级风险较大，虽然会自动备份数据，依然建议自行再备份一下。\n* 参数: mariadb 可升级已安装的Mariadb，虽然会自动备份数据，依然建议自行再备份一下。\n* 参数: m2m     可从MySQL升级至Mariadb，虽然会自动备份数据，依然建议自行再备份一下。\n* 参数: php     仅适用于LNMP，可升级至大部分PHP版本。\n* 参数: phpa    可升级LNMPA/LAMP的PHP至大部分版本。\n* 参数: mphp    多PHP版本升级工具，只支持7.2.x-7.2.x类似小版本升级，大版本直接新装即可；\n* 参数: phpmyadmin    可升级phpMyadmin。\n\n### 扩展插件\n执行: `./addons.sh {install|uninstall} {eaccelerator|xcache|memcached|opcache|redis|apcu|imagemagick|ioncube|exif|fileinfo|ldap|bz2|sodium|imap|swoole}`\n以下为扩展插件安装使用说明\n#### 缓存加速：\n* 参数: xcache 安装时需选择版本和设置密码，http://yourIP/xcache/ 进行管理，用户名 admin，密码为安装xcache时设置的。\n* 参数: redis  安装redis\n* 参数: memcached 可选择php-memcache或php-memcached扩展。\n* 参数: opcache 可访问 http://yourIP/ocp.php 进行管理。\n* 参数: eaccelerator 安装。\n* 参数: apcu 安装apcu php扩展，支持php7，可访问 http://yourIP/apc.php 进行管理。 \n**请勿安装多个缓存类扩展模块，多个可能导致网站出现问题 ！**\n#### PHP组件/模块：\n* 参数：exif   图片exif信息读取模块。\n* 参数：fileinfo   文件MIME类型编码读取模块，安装要求至少有1GB以上内存，否则可能会安装失败。\n* 参数：ldap    LDAP扩展。\n* 参数：bz2     bz2压缩扩展模块。\n* 参数：imap    imap模块。\n* 参数：swoole  PHP协程框架模块，第三方模块不支持通过lnmp.conf开启安装。\n\n#### 图像处理：\n* imageMagick安装卸载执行：`./addons.sh {install|uninstall} imageMagick` imageMagick路径：/usr/local/imagemagick/bin/。\n\n#### 解密：\n* IonCube安装执行：`./addons.sh {install|uninstall} ionCube`。\n* Sodium加密库扩展模块安装/卸载执行：`./addons.sh {install|uninstall} sodium `，一般微信支付之类的需要使用，PHP 7.2以下版本不支持通过lnmp.conf开启安装。\n* SourceGuardian Loader加密库扩展模块安装/卸载执行：`./addons.sh {install|uninstall} sg `，SourceGuardian加密的PHP文件需要使用此组件解码运行。\n\n#### 其他常用脚本：\n* 可选1，多PHP版本安装执行：`./install.sh mphp` 可以安装多个PHP版本 ，只支持LNMP模式，lnmp vhost add时进行选择或使用时需要将nginx虚拟主机配置文件里的include enable-php.conf替换为 include enable-php5.6.conf 即可前面的5.6换成你刚才安装的PHP的大版本号5.* 或7.0之类的。\n* 可选2，数据库安装执行：`./install.sh db` 可以直接单独安装MySQL或MariaDB数据库。\n* 可选3，Nginx安装执行：`./install.sh nginx`可以直接单独安装Nginx。\n**以下工具在lnmp安装包tools目录下**可拷贝到其他目录下运行\n* 可选4，执行：`./reset_mysql_root_password.sh` 可重置MySQL/MariaDB的root密码。\n* 可选5，执行：`./check502.sh`  可检测php-fpm是否挂掉,502报错时重启，配合crontab使用。\n* 可选6，执行：`./cut_nginx_logs.sh` 日志切割脚本。\n* 可选7，执行：`./remove_disable_function.sh` 运行此脚本可删掉禁用函数。\n\n### 无人值守安装\n\n**无人值守命令生成工具：\u003chttps://lnmp.org/auto.html\u003e**\n* 设置如下环境变量即可完全无人值守安装\n\n变量名 | 变量值含义\n--- | ---\nLNMP_Auto | 启用无人值守自动安装\nDBSelect | 数据库版本序号\nDB_Root_Password | 数据库root密码（不可为空），不安装数据库时可不加该参数\nInstallInnodb | 是否安装Innodb引擎，y 或 n ，不安装数据库时可不加该参数\nPHPSelect | PHP版本序号\nSelectMalloc | 内存分配器版本序号\nApacheSelect | Apache版本序号，仅LNMPA和LAMP模式需添加该参数\nServerAdmin | 管理员邮箱，仅LNMPA和LAMP模式需添加该参数\nRHELRepo | (非必选)设为 local 时，RHEL使用本地源，不设置源为163 centos源\nCheckMirror | (非必选)安装时不检查下载镜像，方便无网络安装\nBin | (非必选)MySQL 5.7-8.0/MariaDB使用二进制方式安装，y 或 n，默认使用二进制方式安装,离线默认使用源码编译安装\n\n* 各程序版本对应序号\n\nMySQL版本 | 对应序号 | PHP版本 | 对应序号 | 内存分配器 | 对应序号 | Apache版本 | 对应序号\n:------: | :------: | :------: | :------: | :------: | :--------: | :--------: | :--------:\nMySQL 5.1 | 1 | PHP 5.2 | 1 | 不安装 | 1 | Apache 2.2 | 1\nMySQL 5.5 | 2 | PHP 5.3 | 2 | Jemalloc | 2 | Apache 2.4 | 2\nMySQL 5.6 | 3 | PHP 5.4 | 3 | TCMalloc | 3 | |\nMySQL 5.7 | 4 | PHP 5.5 | 4 | | | |\nMySQL 8.0 | 5 | PHP 5.6 | 5 | | | |\nMariaDB 5.5 | 6 | PHP 7.0 | 6 | | | |\nMariaDB 10.4 | 7 | PHP 7.1 | 7 | | | |\nMariaDB 10.5 | 8 | PHP 7.2 | 8 | | | |\nMariaDB 10.6 | 9 | PHP 7.3 | 9 | | | |\nMariaDB 10.11 | 10 | PHP 7.4 | 10 | | | |\nMySQL 8.4 | 11 | PHP 8.0 | 11 | | | |\n不安装数据库 | 0 | PHP 8.1 | 12 | | | |\n| | | PHP 8.2 | 13 | | | |\n| | | PHP 8.3 | 14 | | | |\n\n* 以LNMP模式，默认选项安装MySQL 5.5、MySQL root密码设置为lnmp.org、启用InnoDB、PHP 5.6、不安装内存分配器为例，先执行([建议先运行screen](https://www.vpser.net/manage/run-screen-lnmp.html))，再下载解压lnmp安装包：\n\n`wget http://soft.lnmp.com/lnmp/lnmp2.0.tar.gz -cO lnmp2.0.tar.gz \u0026\u0026 tar zxf lnmp2.0.tar.gz \u0026\u0026 cd lnmp2.0`\n\n然后设置无人值守参数并安装：\n\n`LNMP_Auto=\"y\" DBSelect=\"2\" DB_Root_Password=\"lnmp.org\" InstallInnodb=\"y\" PHPSelect=\"5\" SelectMalloc=\"1\" ./install.sh lnmp`\n\n(如果缺失参数的话还是会有要求选择缺失选项的提示)。\n\n### 卸载\n* 卸载LNMP、LNMPA或LAMP可执行：`./uninstall.sh` 按提示选择即可卸载。\n\n## 状态管理\n* LNMP/LNMPA/LMAP状态管理：`lnmp {start|stop|reload|restart|kill|status}`\n* Nginx状态管理：`lnmp nginx或/etc/init.d/nginx {start|stop|reload|restart}`\n* MySQL状态管理：`lnmp mysql或/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}`\n* MariaDB状态管理：`lnmp mariadb或/etc/init.d/mariadb {start|stop|restart|reload|force-reload|status}`\n* PHP-FPM状态管理：`lnmp php-fpm或/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}`\n* PureFTPd状态管理：`lnmp pureftpd或/etc/init.d/pureftpd {start|stop|restart|kill|status}`\n* Apache状态管理：`lnmp httpd或/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}`\n\n## 虚拟主机管理\n* 添加：`lnmp vhost add`\n* 删除：`lnmp vhost del`\n* 列出：`lnmp vhost list`\n* 数据库管理：`lnmp database {add|list|edit|del}`\n* FTP用户管理：`lnmp ftp {add|list|edit|del|show}`\n* SSL添加：`lnmp ssl add`\n* 通配符/泛域名SSL添加：`lnmp dnsssl {ali|cf|dp|he|gd|aws|namecheap|namesilo}` 需依赖域名dns api\n\n## 相关图形界面\n* PHPMyAdmin：http://yourIP/phpmyadmin/\n* phpinfo：http://yourIP/phpinfo.php\n* PHP探针：http://yourIP/p.php\n* Xcache管理界面：http://yourIP/xcache/\n* Zend Opcache管理界面：http://yourIP/ocp.php\n* apcu管理界面：http://yourIP/apc.php\n\n## LNMP相关目录文件\n\n### 目录位置\n* Nginx：/usr/local/nginx/\n* MySQL：/usr/local/mysql/\n* MariaDB：/usr/local/mariadb/\n* PHP：/usr/local/php/\n* 多PHP目录：/usr/local/php5.6/ 版本号随安装版本不同而不同\n* PHP扩展插件配置文件目录：/usr/local/php/conf.d/\n* PHPMyAdmin：/home/wwwroot/default/phpmyadmin/\n* 默认虚拟主机网站目录：/home/wwwroot/default/\n* Nginx日志目录：/home/wwwlogs/\n\n### 配置文件：\n* Nginx主配置文件：/usr/local/nginx/conf/nginx.conf\n* MySQL/MariaDB配置文件：/etc/my.cnf\n* PHP配置文件：/usr/local/php/etc/php.ini\n* PHP-FPM配置文件：/usr/local/php/etc/php-fpm.conf\n* PureFtpd配置文件：/usr/local/pureftpd/etc/pure-ftpd.conf\n* Apache配置文件：/usr/local/apache/conf/httpd.conf\n\n### lnmp.conf 配置文件参数说明\n\n| 参数名称 | 参数介绍 | 例子 |\n| :-------: | :---------: | :--------: | \n|Download_Mirror|下载镜像|一般默认，如异常可[修改下载镜像](https://lnmp.org/faq/download-url.html)|\n|Nginx_Modules_Options|添加Nginx模块或其他编译参数|--add-module=/第三方模块源码目录|\n|PHP_Modules_Options|添加PHP模块或编译参数|--enable-exif 有些模块需提前安装好依赖包|\n|MySQL_Data_Dir|MySQL数据库目录设置|默认/usr/local/mysql/var|\n|MariaDB_Data_Dir|MariaDB数据库目录设置|默认/usr/local/mariadb/var|\n|Default_Website_Dir|默认虚拟主机网站目录位置|默认/home/wwwroot/default|\n|Enable_Nginx_Openssl|Nginx是否使用新版openssl|默认 y，建议不修改，y是启用并开启到http2|\n|Enable_PHP_Fileinfo|是否安装开启php的fileinfo模块|默认n，根据自己情况而定，安装启用的话改成 y|\n|Enable_Nginx_Lua|是否为Nginx安装lua支持|默认n，安装lua可以使用一些基于lua的waf网站防火墙|\n|Enable_Ngx_FancyIndex|是否按fancyIndex模块|默认n，fancyIndex是一个第三方目录索引模块|\n|Enable_Swap|是否添加SWAP|默认y，当内存不足时可提高编译安装成功概率|\n|Enable_PHP_Exif|是否添加PHP exif模块|默认n，更改为y即安装|\n|Enable_PHP_Fileinfo|是否添加PHP fileinfo模块|默认n，更改为y即安装，需1GB以上内存|\n|Enable_PHP_Ldap|是否添加PHP ldap模块|默认n，更改为y即安装|\n|Enable_PHP_Bz2|是否添加PHP bz2模块|默认n，更改为y即安装|\n|Enable_PHP_Sodium|是否添加PHP sodium模块，PHP 7.2以下不支持lnmp.conf开启安装|默认n，更改为y即安装|\n|Enable_PHP_Imap|是否添加PHP imap模块|默认n，更改为y即安装|\n\n## 技术支持\n\n**技术支持论坛：\u003chttps://bbs.lnmp.com/forum-25-1.html\u003e**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flnmpkvemail%2Flnmp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flnmpkvemail%2Flnmp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flnmpkvemail%2Flnmp/lists"}