Linux系统上搭建PHP环境是很多网站开发者和运维人员都会遇到的环节。Linux凭借其稳定性和安全性,成为服务器操作系统的主流选择,而PHP作为广泛使用的后端脚本语言,它们的搭配几乎支撑了互联网上超过七成的网站。安装PHP并不复杂,但不同场景下有不同的需求,比如你是做简单测试,还是在正式环境跑生产项目,选择的方式会有所区别。

用包管理器安装最快

对大多数使用Ubuntu、Debian、CentOS这类主流Linux发行版的用户来说,用系统自带的包管理器安装PHP是最直接的办法。Ubuntu和Debian上用的是apt命令,比如sudo apt install php,系统就会自动把PHP装上。CentOS或RHEL系列则用yum或者dnf,默认仓库里带的PHP版本可能比较老,比如CentOS 7默认装的是PHP 5.4,这已经是被官方停止维护的版本了。

安装linux_php linux 安装_安装linux虚拟机

如果你只是想在本地跑个简单的WordPress或者学习PHP语法linux解压rar,用系统默认仓库安装也挺够用。但需要留意的是,很多现代PHP框架和CMS都对版本有要求,比如Laravel需要PHP 8.0以上,这时候就需要额外添加第三方仓库。Ubuntu上可以加ppa:ondrej/php这个源,CentOS上推荐用Remi仓库php linux 安装,装好之后就能选择安装PHP 8.1或者8.2了。

包管理器安装的最大好处是省心,依赖关系会自动处理,卸载也干净。但缺点也很明显,你没法自由定制编译参数,比如要装哪些扩展,哪些功能要开启,这些都受限于仓库里预编译好的包。

编译安装适合定制化需求

php linux 安装_安装linux_安装linux虚拟机

当你的项目对PHP有特殊要求,比如需要开启某些冷门扩展、要指定安装路径、或者要在同一台机器上跑多个PHP版本,编译安装就是更好的选择。你需要从下载源码包,解压之后执行./configure --prefix=/usr/local/php --with-pdo-mysql --with-openssl这种配置命令,后面跟上你需要的参数。

编译安装的灵活性确实高,但过程也相对繁琐。你得先确保系统里有gcc、make、autoconf这些编译工具,还得手动解决各种依赖库,比如libxml2、libcurl、libsqlite3这些。少了任何一个依赖,编译就会报错,这时候你得根据错误提示去查缺了什么包,再用包管理器补上。这个过程对新手来说有点劝退,但只要折腾过一两次,你对Linux系统的理解会上一个台阶。

还要提醒一点,编译安装默认不会注册成系统服务,你需要手动把PHP的二进制路径加到环境变量里,或者用systemd写一个服务文件来自动启动PHP-FPM。不然每次运行php命令都得敲完整路径,很不方便。

安装linux_php linux 安装_安装linux虚拟机

安装扩展和配置环境变量

不管用哪种方式装好PHP,接下来的重头戏就是装扩展。很多PHP功能是靠扩展实现的,比如连接MySQL需要pdo_mysql,处理图片需要gd,加速代码需要opcache。用包管理器装的PHP,扩展通常也可以直接用apt或yum装,比如sudo apt install php-mysql php-gd。编译安装的话,你需要在编译时通过--with-xxx参数指定,或者装好之后用phpize单独编译扩展。

扩展装完之后,别忘了修改php.ini配置文件。这个文件决定了PHP的运行行为,比如上传文件大小限制、内存上限、时区设置等。你可以用php --ini命令查看当前加载的配置文件路径,然后直接编辑。常见需要调整的参数有upload_max_filesize、post_max_size、memory_limit和date.timezone,生产环境里这些值最好根据项目需求重新设置。

环境变量这块也容易忽略。如果你编译安装的PHP路径不在系统默认搜索范围内,执行php命令会提示找不到。解决办法是把PHP的bin目录加到/etc/profile或者用户目录下的.bashrc里,加上export PATH=$PATH:/usr/local/php/bin,然后source一下。这样你在终端任何位置都能直接调用php命令了。

用集成环境还是分开装

现在有些开发者喜欢用宝塔、LNMP一键安装包这类集成环境,它们会把Nginx或Apache、MySQL、PHP打包一起装好,甚至帮你配置好虚拟主机和SSL证书。对不常接触Linux命令行的人来说,这种方式确实省事,而且有图形化面板,管理起来直观。

安装linux虚拟机_安装linux_php linux 安装

但集成环境也有它的弊端。一是你没法灵活控制每个组件的版本和编译参数php linux 安装,二是如果出了问题linux系统应用,排查起来更复杂,因为你不清楚底层是怎么配置的。如果你是在学习阶段或者跑个人项目,集成环境完全够用。但如果是企业级的正式环境,还是建议你手动分开安装,这样对系统资源的掌控更细,安全风险也更可控。

我个人的经验是,先在虚拟机或Docker里折腾几遍手动安装,等熟悉了流程再用集成环境也不迟。毕竟了解底层原理之后,就算哪天集成环境出了故障,你也不至于束手无策。

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复