moeYuiYui / lnmp

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程序。
https://lnmp.org
Other
114 stars 61 forks source link

一点点小建议 #1

Open hicasper opened 11 months ago

hicasper commented 11 months ago
  • 由于去除的lnmp.org的下载镜像,中国大陆用户不友好请自行解决。

可以考虑在脚本中加上用ip api判断国内外(或者直接在配置文件里加镜像的设置),对github之类访问不稳定的资源拉取会友好很多

  • 由于去除了下载镜像,SourceGuardian以及ionCube安装失效,如有需求可以通过修改lnmp.conf中"Download_Mirror='https://soft.vpser.net/' "恢复lnmp.org下载镜像即可安装。

这部分可以考虑做成全自动,如果碰到这部分,就弹一个提示,确认后从原地址下载。

  • Nginx Lua以及Zend无法在线获取,可以在release下载自带lua以及zend的包安装。

可以把脚本这部分改为如果文件不存在,就自动去github releases拉回来?

(顺便再问一下,替换的资源和原来的都是完全相同的吗,怕vpser.com镜像里的有些tar包版本不对或者是被修改过的版本

moeYuiYui commented 11 months ago

自动判断ip归属原脚本有的因为大部分软件都没有中国节点,只有mariadb有可靠的中国源,留下也没意义就删了改为手动。如果找到比较可靠的中国源会加上。

SourceGuardian以及ionCube

这个毕竟军哥放在服务器上都是老版本,我认为需求不大,手动应该能满足。下次维护的时候做成交互式。

Nginx Lua以及Zend

下次也做成交互式吧。

替换资源的问题。主要是依赖,因为官方源可以直接安装新的php等所以肯定不一样。

这是我安装测试自动下载的

SHA1 6393c1451c2f1c5f83aed5ea92d280af078e27d9 freetype-2.13.0.tar.xz f251029d5ab542a96dd4531605fe577185077560 freetype-2.7.tar.bz2 409a6a8c07280e02cc33b65ae871311f4b33077b libiconv-1.17.tar.gz 9a426532e9087dd7737aabccff8b91abf9151a7a libmcrypt-2.5.8.tar.gz 5a940f2132066b258e42c60530599fec579be082 libzip-1.3.2.tar.xz 8ae0e866714fbbb96a0a6fa9f099089dc93f1d86 mcrypt-2.6.8.tar.gz d6f324e70a42a8bbf7a5458521257225afcf0caf mhash-0.9.9.9.tar.bz2

这是军哥full包里的

SHA1 6393c1451c2f1c5f83aed5ea92d280af078e27d9 freetype-2.13.0.tar.xz f251029d5ab542a96dd4531605fe577185077560 freetype-2.7.tar.bz2 409a6a8c07280e02cc33b65ae871311f4b33077b libiconv-1.17.tar.gz 27b60f274275553d14997bd2a59474eb9cffc4a7 libmcrypt-2.5.8.tar.gz 5a940f2132066b258e42c60530599fec579be082 libzip-1.3.2.tar.xz 8ae0e866714fbbb96a0a6fa9f099089dc93f1d86 mcrypt-2.6.8.tar.gz bc1bea3e4589a1b5ac80fcaa6af9e41cda32be05 mhash-0.9.9.9.tar.bz2

可以看到只有libmcrypt-2.5.8.tar.gz和mhash-0.9.9.9.tar.bz2这两个文件是不一样的。 军哥把这两个软件包更新了新的config.guess和config.sub后打包的所以不一样。这两个依赖毕竟是10多年前的源码了这两文件确实过时了。由于主打官方镜像,所以改成内置patch文件,在编译安装前通过patch将这两个文件更新为最新的再进行安装。最新的文件来自GNU。具体看include/init.sh

Install_Libmcrypt() { Echo_Blue "[+] Installing ${LibMcrypt_Ver}" Tar_Cd ${LibMcrypt_Ver}.tar.gz ${LibMcrypt_Ver} patch -p1 < ${cur_dir}/src/patch/libmcrypt.patch ./configure Make_Install

Install_Mhash() { Echo_Blue "[+] Installing ${Mhash_Ver}" Tar_Cd ${Mhash_Ver}.tar.bz2 ${Mhash_Ver} patch -p1 < ${cur_dir}/src/patch/mhash.patch ./configure Make_Install

hifocus commented 11 months ago

建议不要把 lnmp.org 放项目网址,可能会有人点进去从里面下载(just as precaution)