ejetar/nginx-fastcgi-fix-permission

修复Nginx的FastCGI模块创建的缓存文件夹权限的简单方法。

dev-main 2022-03-15 14:30 UTC

This package is auto-updated.

Last update: 2024-09-15 19:56:37 UTC


README

目录

关于

这个库的诞生目的是修复Nginx自动生成的文件夹权限,以存储您的网站缓存。

在我们的情况下,原始的缓存文件夹是这样的

ls -lsa
4 drwx------  2 nobody root 4096 Mar  4 17:54 cache_folder

这个问题在于,如果您在网站上有一个清除缓存的过程,比如Wordpress的Nginx Cache插件,您的用户将无法清除缓存文件夹的内容。

它是如何工作的

我们将我们的脚本设置为在Nginx服务的ExecStartPost钩子上运行。

这样,在nginx启动或重启后,我们的脚本运行,将文件夹权限修复为我们想要的。

安装

  1. 打开您想安装项目的文件夹,并运行:composer require ejetar/nginx-fastcgi-fix-permission

  2. 然后编辑以下文件:/lib/systemd/system/nginx.service。在[Service]部分添加以下行:ExecStartPost=<您安装库的路径>/nginx-fastcgi-fix-permission/fix
    示例

[Unit]
Description=nginx - high performance web server
Documentation=https://nginx.ac.cn/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/nginx.pid)"
ExecStartPost=/opt/nginx-fastcgi-fix-permission/fix

[Install]
WantedBy=multi-user.target

[Service]
LimitNOFILE=65535
  1. 执行systemctl daemon-reload
  2. 重启nginx,完成!

变更日志

目前没有...

贡献

为这个美妙的项目做出贡献,能和您一起合作将是一种荣幸。让我们帮助开源软件社区。欢迎您添加新功能、进行修正、报告错误,以及任何其他形式的支持。别忘了在这个存储库中给它加星!😀

许可

这个库是开源软件,许可协议为MIT。