当前位置:首页 > 探索

linux一键php环境搭建

linux一键php环境搭建

我见过太多人在Linux上装PHP环境翻车。键境搭建apt-get install php后,键境搭建版本不对、键境搭建扩展缺失、键境搭建nginx和php-fpm对接不上,键境搭建折腾两小时最后发现是键境搭建socket路径写错。所以当我发现一个叫oneinstack的键境搭建脚本时,第一反应是键境搭建怀疑——又一个花架子?

直到我在一台刚买的腾讯云轻量服务器上试了一次。系统是键境搭建Ubuntu 22.04,干净得像张白纸。键境搭建下载脚本,键境搭建执行./install.sh,键境搭建选nginx+php8.1+mysql8.0,键境搭建回车。键境搭建然后我去泡了杯咖啡,键境搭建回来时屏幕上已经显示“Congratulations”。前后不到九分钟。phpinfo页面打开,版本正确,扩展齐全,连opcache都配好了。

这个脚本的用法简单到粗暴:

wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz tar xzf oneinstack-full.tar.gz cd oneinstack sudo ./install.sh 

接下来就是选择题。选你想要的web服务器、PHP版本、数据库。选完就等。它会自动处理编译依赖,自动配置systemd服务,自动设置防火墙规则。你要做的只是看着屏幕滚动。

但真正让我服气的是它的容错能力。有一次我在CentOS 7上跑,系统自带Python 2.6,脚本居然检测到版本太老,自动改用Python 3.6的路径去执行后续步骤。还有一次磁盘空间不足,它没像其他脚本那样直接报错退出,而是提示你清理哪些目录后可以继续。

当然,它也不是没有缺点。编译安装意味着每次升级PHP版本都要重新跑一遍脚本,不像apt那样apt upgrade就完事。而且它默认把MySQL装在/usr/local/mysql,跟系统包管理器的路径习惯不一样,后期手动管理时容易找不到配置文件。

但话说回来,对于不想被环境配置劝退的人来说,这个脚本省下的时间够你多写几十行业务代码。我甚至在一台只有512MB内存的vps上跑过,它自动帮你把php-fpm的进程数调低,避免OOM。这种细节,官方文档都不会告诉你。

如果你实在不想用第三方脚本,其实还有一条更轻的路:直接用apt装php-fpm和nginx,然后手动改nginx配置指向php-socket。但那样你得自己处理www.conf里的listen参数、nginx的fastcgi_pass地址、还有php扩展的安装。每一步都有坑,每一个坑都能让你怀疑人生。

所以我的建议是:第一次用oneinstack,第二次用oneinstack,直到你对Linux的目录结构和服务管理方式有了肌肉记忆,再考虑手动搭建。工具存在的意义不是让你依赖它,而是让你在还不熟练的时候,不被细节绊倒。等哪天你手动搭出一次环境,回头再看oneinstack生成的配置文件,你会看懂每一行都是为什么。

分享到: