AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 778120
Accepted
David L.
David L.
Asked: 2016-05-21 14:36:07 +0800 CST2016-05-21 14:36:07 +0800 CST 2016-05-21 14:36:07 +0800 CST

是什么导致上传时 wordpress 文件为空错误?

  • 772

当我尝试在 wordpress 中上传任何内容时,我似乎无法弄清楚为什么会得到以下信息……对于媒体上传和 wordpress 导入 xml:

“抱歉,出现错误。文件为空。请上传更多内容。此错误也可能是由 php.ini 中禁用上传或 post_max_size >定义为小于 php.ini 中的 upload_max_filesize 引起的。 "

似乎很少有关于如何通过 nginx/php-fpm 在线解决此问题...其中大部分是关于 php.ini max configs 或 chmod,其中...在我的设置中post_max_size足够大以及(以及超时)......并且 chmod/chown 似乎对于使用单独的 php 池是正确的。也许有人可以对此做出正面或反面?upload_max_filesize/etc/php5/fpm/php.ini

这是我的设置:

  • Cloudflare(已关闭)到浮动 IP
  • Digitalocean 浮动 IP 到 droplet
  • Droplet 是带有 nginx 的 Ubuntu 14.04,使用 php-fpm 并为每个 wordpress ms 安装创建池(x4 atm)
  • SSL with Let's encrypt 用于每个 wpms 安装
  • Chmod 755 用于站点根目录中的所有 wpms 目录
  • chmod 644 用于每个站点根目录中的所有 wpms 文件
  • chmod 660 用于 wp-config.php
  • chown 每个 php5-fpm 池用户在他们自己的站点根目录中的所有文件/目录,例如:chown -R example1:example1 /home/example1/*
  • Wordpress 是其 nginx conf 根目录下的一个目录。例如/home/example1/app/wordpress_files_here
  • php.ini 已使用定义的目录(/home/tmp/)启用上传

用户不在 www-data 组或 sudo 组中,我读到这样做是一种安全风险,但即便如此,我还是暂时尝试将它们添加到 www-data 组以查看 wordpress 上传是否可以工作......它没有。我也尝试过 chown example1:www-data 所有权,但没有用。我也试过 chmod 777 上传文件夹,没有用。

错误日志有以下内容:在 wpms-error.log 中(这对我来说也没有意义)

2016/05/20 01:12:00 [crit] 1584#0: *1251 open() "/home/example1/example1.com-access.log" failed (13: Permission denied) while logging request, client: [my IP address], server: example1.com, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm-example1.sock", host: "example1.com", referrer: "https://example1.com/wp-admin/admin.php?import=wordpress&step=1&_wpnonce=dad4d82487"

在这些站点的 nginx conf 文件中,我有: access_log /home/example1/$host-access.log;

在 nginx.conf 中启用了访问日志(即使不推荐),但每个站点的访问日志并未写入其站点根目录。

所以...在尝试了我在网上阅读的所有内容之后...我什至还没有找出根本问题是什么...因为仅文件权限似乎不是吗?.. 是吗???

以下(将用户名更改为 example1 等后)是ps aux | grep php结果:

root       993  0.0  0.2 266688 11396 ?        Ss   May18   0:10 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)
example1  1003  0.0  1.1 302568 45856 ?        S    May18   0:32 php-fpm: pool example1              
example1  1004  0.0  1.1 304620 47808 ?        S    May18   0:31 php-fpm: pool example1             
example2     1005  0.0  1.1 304360 47648 ?        S    May18   0:30 php-fpm: pool example2                   
example2     1007  0.0  1.1 302308 45956 ?        S    May18   0:30 php-fpm: pool example2                  
example3  1008  0.0  0.1 268640  7704 ?        S    May18   0:00 php-fpm: pool example3               
example3  1009  0.0  0.1 268640  7744 ?        S    May18   0:00 php-fpm: pool example3               
www-data  1010  0.0  0.1 266680  7560 ?        S    May18   0:00 php-fpm: pool www                     
www-data  1011  0.0  0.1 266680  7564 ?        S    May18   0:00 php-fpm: pool www                     
example4      1013  0.0  0.9 296016 39704 ?        S    May18   1:24 php-fpm: pool example4                   
example4      1014  0.0  1.3 310952 55024 ?        S    May18   1:23 php-fpm: pool example4                   
example5     1015  0.0  1.0 297352 40940 ?        S    May18   0:32 php-fpm: pool example5                  
example5     1016  0.0  1.1 305104 48232 ?        R    May18   0:32 php-fpm: pool example5                  
example4      1105  0.0  0.9 296016 39596 ?        S    May18   1:20 php-fpm: pool example4                    
example1  1313  0.0  0.9 296284 39884 ?        S    May18   0:31 php-fpm: pool example1              
example2     1317  0.0  1.1 304364 47628 ?        S    May18   0:29 php-fpm: pool example2                   
example5     1332  0.0  0.9 296880 39056 ?        S    May18   0:29 php-fpm: pool example5                   
example3  3727  0.0  0.0  11744   932 pts/1    S+   18:42   0:00 grep --color=auto php

上面的 example3 不是 wpms 站点,它只是一个空的 root atm,并且该用户也在 sudo 组中,并且拥有自己的 ssh 登录名。我不知道这是否相关。

nginx wordpress php-fpm wordpress-mu ubuntu-14.04
  • 1 1 个回答
  • 2748 Views

1 个回答

  • Voted
  1. Best Answer
    Tim
    2016-05-23T11:55:35+08:002016-05-23T11:55:35+08:00

    这对我来说听起来像是一个权限问题,可能是围绕组。我将在本教程中详细介绍,但要点如下

    首先是我用来重置权限的脚本

    chown -R tim:www-data *
    find /var/www/wordpress -type d -exec chmod 755 {} \;
    find /var/www/wordpress -type f -exec chmod 644 {} \;
    find /var/www/wordpress/wp-content/uploads -type f -exec chmod 664 {} \;
    find /var/www/wordpress/wp-content/plugins -type f -exec chmod 664 {} \;
    find /var/www/wordpress/wp-content/themes -type f -exec chmod 644 {} \;
    chmod 440 /var/www/wordpress/wp-config.php
    chmod -R g+s /var/www/wordpress/
    

    以下是我教程中的要点——其中的信息来自 wordpress.org 网站,大部分情况下,我的教程中有参考资料

    • 将所有者设置为您之前创建的用户,并将所有权组设置为 www-data
    • 文件夹默认为 755,标准
    • 文件默认为所有者可写,所有人可读
    • 上传用户和网络服务器可写的文件夹,因此媒体可以由用户上传
    • 用户和 Web 服务器可写的 Plugins 文件夹,因此可以添加插件
    • 主题文件夹只能由所有者修改
    • 0

相关问题

  • Gzip 与反向代理缓存

  • nginx 作为代理的行为

  • Nginx 学习资源 [关闭]

  • 提供 70,000 个静态文件 (jpg) 的最佳方式?

  • 在 Apache、LightTPD 和 Nginx Web 服务器上提供 PHP 5.x 应用程序的现状?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve