debian 12 系统只安装PHP而不安装apache的方法
最近懒散了,新购的服务器不再采用二进制编译安装服务器环境。于是,遇到了一些小小的问题。比如:安装PHP时总是会自动安装Apache 2,但实际上,又不需要Apache 2。以下是管振佐实际中使用的几种不安装Apache的方法:
1.永久不再安装Apache 2
1.如果还没进行安装,执行下面的命令可以实现禁止安装Apache 2、lighttpd
sudo apt-mark hold apache2 apache2-bin lighttpd
这条命令是将Apache 2标记为手动安装,算是一种长期阻止Apache 2被自动安装的方法,如果已经安装则需要卸载/删除:
sudo apt remove --purge apache2 apache2-utils apache2-bin
sudo apt autoremove
sudo apt-mark hold apache2 apache2-bin
2.sudo apt-mark hold 命令可以阻止/自动安装,但不能完全防止依赖拉入,此时,可以通过编辑no-webservers文件完全杜绝
vim /etc/apt/preferences.d/no-webservers
Package:apche2*
Pin:release *
Pin-Priority: -1
Package:lighttpd*
Pin:release *
Pin-Priority:-1
效果:完全禁止安装,也包括依赖触发,apt会直接报错而不是安装
3.通过PPKG层面进行安装拦截
创建hook:
vim /etc/dpkg/dpkg.cfg.d/no-webservers
path-exclude=/usr/sbin/apache2
path-exclude=/usr/sbin/lighttpd
此操作算是属于物理层阻断吧,防止文件进入系统
4.通过systemd防止误启动
systemctl mask apache2
systemctl mask lighttpd
此操作是预防即使手动安装了也确保无法运行。包括手动和依赖触发
其他方法永久禁止安装Apache 2的方法,后续逐渐更新
2.单独安装PHP和相关插件
sudo apt install php php-cli php-fpm php-common php-mysql php-curl php-gd php-mbstring php-xml php-zip
3.更换PHP源
此方法没有深入研究