小编Sha*_*ant的帖子

为什么PHP文件被下载而不是由Nginx处理?

我看到了同样的问题,许多解决方案都指向添加类型处理程序,但那是针对 Apache 的。

我正在使用 Arch Linux、Nginx、PHP 和 PHP-FMP,但我无法弄清楚为什么 php 文件正在下载而不是运行。

这是我的 nginx.conf:

#user http;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / { …
Run Code Online (Sandbox Code Playgroud)

php nginx php-fpm

12
推荐指数
2
解决办法
3万
查看次数

为什么 ACL 在此设置下无法正常工作?

我在我的笔记本电脑上运行Arch Linux作为开发机器,我需要授予用户组RW权限到文件夹:/srv/http及其下的所有文件和文件夹。

我确保 ACL 已安装,然后将其添加到我的 fstab 中:

/dev/sda7               /               ext4            rw,relatime,data=ordered,acl    0 1
Run Code Online (Sandbox Code Playgroud)

然后我运行了以下命令:

sudo setfacl -m group:users:rw- -R /srv/http
Run Code Online (Sandbox Code Playgroud)

它在我的台式机上工作正常,为什么在我的笔记本电脑上工作不一样?使用上面的 setfacl 命令后,用户甚至不再具有对文件或文件夹的读取访问权限。

当我像这样删除 ACL 记录时:

sudo setfacl -bR /srv/http
Run Code Online (Sandbox Code Playgroud)

在该命令之后,用户可以打开文件,但不能修改它们。

我在这里做错了什么吗?

这是“ls -l /srv/http”的输出

[shane@arch-mobile ~]$ ls -l /srv/http/
total 4
drwxr-xr-x 9 http http 4096 Aug  7 11:04 drupal7
Run Code Online (Sandbox Code Playgroud)

“zcat /proc/config.gz | grep -i acl”的输出:

CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_GENERIC_ACL=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_CIFS_ACL=y
CONFIG_9P_FS_POSIX_ACL=y
Run Code Online (Sandbox Code Playgroud)

linux files access-control-list

5
推荐指数
1
解决办法
7954
查看次数

标签 统计

access-control-list ×1

files ×1

linux ×1

nginx ×1

php ×1

php-fpm ×1