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
    • 最新
    • 标签
主页 / user-261034

Machavity's questions

Martin Hope
Machavity
Asked: 2019-08-05 15:33:26 +0800 CST

PHP-FPM + nginx 产生权限被拒绝,但仅在某些大页面上

  • 2

我有一个 AWS Lightsail 实例(1GB RAM 实例)运行一个相对较新的网站(即几乎没有流量)。它正在运行 nginx 和 PHP-FPM 7.3(也尝试使用 7.2)和 MariaDB。所有这些都在 CentOS 7 下。

在 AWS 免费套餐下一切正常。我运行了一个 T2.micro EC2 实例和一个 T2.micro RDS 实例。Lightsail 有点……更敏感。为了使 Lightsail 正常工作,我将 PHP-FPM 切换到ondemand

按需 - 启动时不创建子级。当新请求连接时,孩子将被分叉。

我必须这样做,否则 MariaDB 会随机崩溃。这似乎不会影响下面的问题。

Wordpress 管理面板停止正常工作,每个人都说要CONCATENATE_SCRIPTS关闭。那行得通……主要是。帖子和模板的编辑器都出现故障。没有人能够给我一个线索为什么。环顾四周,我自己发现了一些东西。

不工作的页面没有完全加载。CONCATENATE_SCRIPTS启用后,CSS 文件将加载到一个巨大的页面中。因为这无法完全渲染,所以浏览器会忽略 CSS 和 JS 文件。CONCATENATE_SCRIPTS通过简单地将它们拆分为更小且易于加载的组件文件来解决此问题。但是编辑页面不能拆分,调试底层问题一直很抓狂。我收到 200 响应和一些数据

页面返回 200

但是页面绘制不完整。我会说可能有 80-90% 的 HTML 在那里,但被切断了。在从这里开始的部分(JS 块)

wp.apiFetch.use( wp.apiFetch.createPreloadingMiddleware( {"\/":{"body":{"name":"S

它只是突然结束,并且每次都在同一点。就好像 PHP-FPM 或 nginx 刚刚停止,但没有任何错误日志(关于这种设置的大多数其他问题都是针对根本不绘制的页面)。更奇怪的是,它不是针对较小的页面,而是针对非常长的页面。没有窃取时间,top实例似乎没有承受任何严重的负载,所以我不确定它为什么会这样做。我重新加载了所有文件,甚至建立了一个单独的 WP 站点来测试它,他们都这样做了。

根据评论,我打开了 nginx 调试日志记录并发现

2019/08/07 02:33:08 [crit] 1461#0: *47 open() "/var/lib/nginx/tmp/fastcgi/3/00/0000000003" failed (13: Permission denied) while reading upstream, client: x.x.x.x, server: example.com, request: "GET /wp-admin/post-new.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000",

这没有任何意义,为什么它会只对少数大文件执行此操作。没有驱动器已满或靠近它。我读了这个问题,但 nginx 和 PHP-FPM 都在apache. 删除 tmp 文件也没有解决它。这些目录归 拥有apache:root,但将它们更改为apache:apache无效。SELinux 似乎也不是罪魁祸首。我也不用proxy_cache。

nginx
  • 1 个回答
  • 2892 Views
Martin Hope
Machavity
Asked: 2019-05-20 15:50:22 +0800 CST

nginx下wordpress文件上传成功但尝试加载文件返回403

  • 1

在过去的几个小时里,我一直在尝试调试它,并且已经解决了这么多问题,我似乎已经碰壁了

我在 CentOS7 下使用 nginx 安装了 Wordpress(如果重要,请使用 AWS Lightsail)。为此,我已确保

  • wp-content/uploads目录是 766
  • apache:apachenginx 和 php-fpm拥有的目录,并且都在该用户下运行
  • seLinuxhttpd_sys_rw_content_t用于目录

这让我成功上传文件。它创建文件并且上述权限正确传播(ln -Z并stat以apache用户身份运行)。文件是 666,但 766 似乎没有任何改变。我手动放置的旧文件可以正常使用。我能找到的唯一区别是手动上传的文件在 seLinux 中设置为

Context: unconfined_u:object_r:httpd_sys_rw_content_t:s0

虽然新的 403 文件是

Context: system_u:object_r:httpd_sys_rw_content_t:s0

我试过setenforce 0但没有改变。重新启动了nginx,仍然没有变化。记录的错误是

2019/05/19 22:35:06 [error] 21393#0: *4010 open() "/usr/share/nginx/example/wp-content/uploads/2019/05/file.jpg" failed (13: Permission denied), client: 172.69.44.142, server: example.com, request: "GET /wp-content/uploads/2019/05/file.jpg HTTP/1.1", host: "www.example.com"

然而/usr/share/nginx/example/wp-content/uploads/2019/04/another_file.jpg工作正常,所以它似乎也与 nginx 配置无关。

还有什么我想念的吗?

nginx
  • 1 个回答
  • 135 Views
Martin Hope
Machavity
Asked: 2015-06-10 07:29:29 +0800 CST

Exchange 2010 拒绝使用 UntrustedRoot 的 Amazon SES TLS

  • 0

由于我们的网络设置,当我们去年转移业务时,我们切换 Exchange 2010 以使用AWS SES 来中继我们的外发电子邮件。直到昨天,当 Exchange 开始无法与 SES 建立 TLS 连接时,这一直运行良好,并且在任何尝试连接时都会在事件日志中出现此错误

无法验证连接器 Amazon SES 的智能主机的 TLS 证书。证书的证书验证错误是 UntrustedRoot。如果问题仍然存在,请联系智能主机管理员解决问题。

我将 OpenSSL for Windows 放在盒子上并运行我在这个线程中找到的命令

openssl s_client -connect email-smtp.us-east-1.amazonaws.com:25 -starttls smtp
CONNECTED(000000EC)
depth=1 C = US, O = Symantec Corporation, OU = Symantec Trust Network, CN = Symantec Class 3 Secure服务器 CA - G4
验证错误:num=20:unable to get local issuer certificate
---
证书链
0 s:/C=US/ST=Washington/L=Seattle/O=Amazon.com, Inc./CN=email -smtp.us-east-1.amazonaws.com
i:/C=US/O=Symantec Corporation/OU=Symantec Trust Network/CN=Symantec Class 3 Secure Server CA - G4
1 s:/C=US/O= Symantec Corporation/OU=Symantec Trust Network/CN=Symantec Class 3
Secure Server CA - G4
i:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=(c) 2006 VeriSign, Inc.
- 仅供授权使用/CN=VeriSign Class 3 Public Primary Certification Authority - G5
---
服务器证书
[为简洁而删除]
subject=/C=US/ST=Washington/L=Seattle/O=Amazon.com, Inc. /CN=email-smtp.us-east-1.amazonaws.com
issuer=/C=US/O=Symantec Corporation/OU=Symantec Trust Network/CN=Symantec Class 3 Secure Server CA - G4
---
无客户端证书已发送 CA 名称
---
SSL 握手已读取 3005 字节并写入 708 字节
---
新,TLSv1/SSLv3,密码为 AES256-SHA
服务器公钥为 2048 位
支持安全重新协商
压缩:无
扩展:无
未协商 ALPN
SSL-Session:
Protocol : TLSv1
Cipher : AES256-SHA
Session-ID: 5576FCDBA77EB88DC9C2678EA399604E0A4543E5CFC0FA1E89F7320A7A84993C

Session-ID-ctx:
Master-Key: CBD8DEA48F07E570896E02CBDC0E1DA08F0DA1D4CA901522B05A9C6F66A3E4F9 811AA12DE24BA0C14402F5585C32BF05
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1433861339
超时:300(秒)
验证返回码:20(无法获取本地颁发者证书)

Linux 与 Windows 上的唯一区别是最后一行

验证返回码:20(无法获取本地颁发者证书)

我怀疑这是 CA 链问题,但我该如何解决?运行集线器传输的服务器是 Windows Server 2008 机器。

windows-server-2008
  • 1 个回答
  • 699 Views
Martin Hope
Machavity
Asked: 2015-05-20 06:24:41 +0800 CST

无法使用内置 CA 包验证 GoDaddy SHA2 SSL 证书

  • 5

我遇到了一个有趣的问题。我们有一个联系 LTL 托运人 ( https://facts.dohrn.com/ ) 的 PHP 脚本。该脚本一直失败,因为它无法验证 SSL 证书。我去了该站点,发现他们正在使用 GoDaddy SHA2 证书(使用GoDaddy 证书捆绑包 - G2,这是用于 SHA2 的)。

我安装了最新版本,ca-certificate看起来他们有Go Daddy 根证书颁发机构 - G2但这不是一回事,并且在所有形式的验证中都失败了。我最终能够通过复制捆绑包并直接在 CURL 请求中使用它来使其工作。但这只是一种解决方法。我是否还缺少其他东西可以在不直接安装 CA 的情况下完成这项工作?

# openssl s_client -connect fact.dohrn.com:443
CONNECTED(00000003) depth=0 OU = Domain Control Validated, CN = fact.dohrn.com verify
error:num=20:unable to get local issuer certificate verify return:1
depth =0 OU = 域控制验证,CN = fact.dohrn.com 验证
错误:num=27:证书不可信验证返回:1 深度=0 OU =
域控制验证,CN = fact.dohrn.com 验证
错误:num= 21:unable to verify first certificate verify return:1
--- Certificate chain 0 s:/OU=Domain Control Validated/CN=facts.dohrn.com
i:/C=US/ST=Arizona/L=Scottsdale/O =GoDaddy.com,
Inc./OU= http://certs.godaddy.com/repository//CN=Go Daddy 安全
证书颁发机构 - G2
--- 服务器证书 [证书已删除]
-----END CERTIFICATE-----
subject=/OU=Domain Control Validated/CN=facts.dohrn.com
issuer=/C=US/ST=Arizona/L= Scottsdale/O=GoDaddy.com,
Inc./OU= http://certs.godaddy.com/repository//CN=Go Daddy Secure
Certificate Authority - G2
--- 未发送客户端证书 CA 名称
--- SSL 握手已读取 1470 字节并写入 563 字节
--- 新,TLSv1/ SSLv3,密码为 RC4-SHA 服务器公钥为 2048 位 不支持安全重新协商 压缩:无 扩展:
无 SSL-会话: 协议
:TLSv1
密码:RC4-SHA
会话 ID:1A23000017A7003411F3833970B7FA23C6D782E663CE0C8B17DE4D5A15DEEA1

Master-Key: F6C9C6345A09B7965AF762DE4BEFE8BDD249136BF30D9364598D78CF123F17230B0C25DD552F103BEF9A893F75EAD2B0
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
Start Time: 1432044402
Timeout : 300 (sec)
Verify return code: 21 (unable to verify the first certificate)

centos
  • 1 个回答
  • 5330 Views
Martin Hope
Machavity
Asked: 2015-01-16 11:52:19 +0800 CST

厨师服务器 12 安装厨师客户端 11

  • 0

我有一台主机,我刚刚从 Chef 11 升级到 Chef 12,但是当我去创建一个新的 EC2 节点时,它想要安装客户端 11.18 而不是 12.01 或 12.03。我不确定这是否会导致客户端爆炸(尝试在主节点上创建客户端节点时遇到 403),但它无济于事。

有谁知道我在哪里可以告诉大师安装什么版本的客户端?

amazon-ec2
  • 1 个回答
  • 461 Views

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