我有一个关于 Nginx 和 PHP-FPM 的配置管理(自动化)的问题:
1)为了允许 Nginx 上的完整 gzip 功能,我执行:
sed -i "s/# gzip_/gzip_/g" /etc/nginx/nginx.conf
2)php.ini
为了增加上传大小和上传安全性,我通过以下方式更改 PHP-FPM :
sed -i "s/post_max_size = .M/post_max_size = 250M/ ; s/upload_max_filesize = .M/upload_max_filesize = 250M/" /etc/php/*/fpm/php.ini
sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/*/fpm/php.ini
我宁愿避免执行这些命令,因为可能有更好、更“标准”的方式来自动进行这些更改,而且文件可能随时更改,因此命令会中断。我假设有一些可以安装的“即时”conf 集apt-get install
或类似的东西,它们已经包含上述更改。
是否有一些配置自动化解决方案可以解决这些开箱即用的配置问题?
在阅读了一些 Ansible 文档之后,我认为仅仅为了自动化这些操作而安装和配置 Ansible 是不合理的(即使我还有 2-3 个类似的操作,我仍然怀疑它是否合理)。
是否有一些用于 Nginx 和 PHP-FPM 的 OOB 配置管理软件来自动化这些操作(也许还有其他类似的操作)在 Ubuntu 社区中常见和支持?
谢谢,
答案1
对于第一个问题(Nginx),使用conf.d/
目录为 Nginx 创建覆盖文件(nano /etc/nginx/conf.d/overrides.conf
)。例如,在其中禁用所有服务器令牌:
# Disable server version
server_tokens off;
对于第二个问题(PHP),使用mods-available/
目录创建zzz_overrides.ini
文件并启用模块(/etc/php/7.0/mods-available/zzz_overrides.ini
)。zzz_
是为了确保它作为最后一个 ini 加载:
expose_php = Off