我刚刚安装了一个在后端运行 NGINX 的新 LAMP 服务器。虽然并非每次都会发生 - 某些 HTTPS 请求正在 URL 中寻找端口 7081。例如:
这是 NGINX 的预期行为吗?我相信它几乎肯定与 NGINX 有关,因为禁用它(并且仅运行 apache)不会产生此错误。
#user nginx;
worker_processes 1;
#error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
#pid /var/run/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 /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#tcp_nodelay …Run Code Online (Sandbox Code Playgroud) 我正在使用 PHP 开发面向服务的架构。
我团队的一名成员建议,由于每个服务仅提供 HTTP 流量,仅以 JSON 形式提供响应(无静态资产等),因此最好仅运行 FPM 并让负载均衡器将流量直接发送到实例的 IP 地址以及 FPM 暴露的端口。
我以前只听说过 PHP-FPM 和 Nginx 一起运行。所有在线文献都建议同时运行 NGINX 和 FPM,但没有解释原因。NGINX 提供的唯一好处是能够提供静态资产以及 PHP 生成的输出吗?
如果 NGINX 以另一种方式增加价值,它在做什么以及在哪里可以找到支持文档。
我有一个客户端,有一个非常非常非常老的 PHP3 web 应用程序,它运行在带有 RedHat 7.somethingOld 的古老消费级 PC 上。我有软件和数据库的备份,但他的资金非常紧张,并且对升级系统的几乎任何部分都非常抗拒。现在他想关闭他的实体办公室,转而使用虚拟办公室。我正在寻找一些关于如何将其转移到 Azure 或 AWS 之类的建议。我认为任何云托管服务都不支持旧的 RH。
据我所知,我的选择是:
有什么想法吗?
我在 php.ini 中增加了 params 值:
upload_max_filesize = 10M
post_max_size = 12M
Run Code Online (Sandbox Code Playgroud)
而php --ini在控制台命令显示我:
post_max_size => 12M => 12M
upload_max_filesize => 10M => 10M
Run Code Online (Sandbox Code Playgroud)
但无论如何,当我尝试发送大于 1mb 的文件时,我会出错。在 nginx 日志中,我看到:
2017/06/03 12:06:40 [error] 16254#16254: *7 client intended to send too large body: 1778665 bytes
Run Code Online (Sandbox Code Playgroud)
fastcgi_param PHP_VALUE "upload_max_filesize = 10M \n post_max_size=12M" 在 nginx conf 中也没有帮助。
那么,如何增加最大上传文件大小?
我的服务器是centos 7, php 5.4, apache 2.4。我的网站位于/var/www.
至于apache是唯一一个用户读或写/var/www,我将所有文件和文件夹的所有者和组设置为apache:
对于文件夹和文件只读:-r------- 1 apache apache 922 Jun 3 2014 connect.php
对于需要写入的文件:-rw------- 1 apache apache 922 Jun 3 2014 connect.php
表示只有600或400文件权限。(*.php 不需要x权限)
至于文件夹权限,只有500或700。
这应该是最佳实践,因为提供尽可能少的广告许可。
有什么安全问题吗?
通过访问 /fpm-status 页面,使用工具定期检索 Prometheus 指标。有时,该工具无法访问 /fpm-status 页面,因为 php-fpm 响应“服务器忙”。请稍后再试。' (HTTP 503) 在此期间 php-fpm 仅记录以下内容:
注意:[pool www]状态:记分板已在使用。
我们经营一个非常小的游泳池,只有两个静态的孩子。
pm = static
pm.max_children = 2
Run Code Online (Sandbox Code Playgroud)
对 /fpm-status 的请求可能会排队。但这通常不是问题。对 fpm 池的请求数量也非常低。所以我预计队列不会很长。(当然我不能确定,因为没有收集那段时间的指标)
查看fpm 源代码,我可以看到它无法获取记分牌上的锁。但它不会等待它可用。所以当没有获取到锁时,就会返回错误。但这是否意味着当另一个请求写入记分板(更新状态)时,fpm-status 不可用?
这是什么意思(即我该如何解决这个问题)?
我们有大约 15 台具有相同 IP 的计算机。我们只希望可以在我们的房子内访问该站点。
在每个页面上,我都有这个代码:
if ($_SERVER['REMOTE_ADDR'] == 'our ip') {
content
}
Run Code Online (Sandbox Code Playgroud)
它的工作原理,但我只是想知道是否有更优雅、更智能的方法?
我们使用 WAMP。
我的一个网站一直是“Pharma Hack”的持续目标——但它使用的是 Drupal 而不是 Wordpress 或 Joomla。它是第 6 版,但已更新到最新版本,我安装的所有模块也是如此。
我更改了密码,删除了有问题的文件,完全重新安装了该站点,但不知何故他们继续获得访问权限.. 该站点是一个非营利组织,它严重影响了我们在 Google 等上的搜索结果。
服务器在编译 PHP 5.4.9 时抛出“内核:哎呀:0000 [1] SMP”。
当我再次尝试以确保它是罪魁祸首时它崩溃了。
除此之外,服务器工作正常。
它有点旧并且在非常旧的操作系统上运行:2.6.23.17-88.fc7
在服务器停止响应之前,我检查了 dmesg 日志是否有错误,但没有。
我是否缺少任何日志?关于如何解决此内核恐慌的任何提示?
我想补充一点,我也编译了 Nginx,但一切顺利。
php ×10
php-fpm ×3
https ×2
nginx ×2
apache-2.4 ×1
azure ×1
cloud ×1
drupal-6 ×1
exploit ×1
fedora ×1
hacking ×1
http ×1
kernel-panic ×1
mysql ×1
redhat ×1
web-server ×1
web-services ×1