草庐IT

Shell+AWStats+ELK分析Nginx的Log

全部标签

nginx - 如何通过解析nginx日志文件自动拒绝ip地址

我在cloudflare和一个负载均衡器后面有4个网络服务器,nginx是网络服务器,php-fpm管理php页面。不知道怎么挡一个简单的dos攻击...我可以使用nginx的http_limit_req模块检测到这种攻击http://wiki.nginx.org/HttpLimitReqModule但这根本无法阻止攻击,是的,这可以缓解,但网络服务器被攻击并再次被攻击,php-fpm达到80%,一分钟后网站无法访问。我正试图找到一种方法来阻止这种请求。我知道如何使用nginx阻止某些IP地址或某些用户代理,但我想自动执行。我认为我无法使用iptables阻止ip,因为请求来自负载均衡

nginx - PHP 限制在 4GB 而不是 2GB?

我是一家大公司的开发人员,该公司有一些遗留代码,需要大量内存才能用于导出函数。为了解决这个问题,ini_set('memory_limit','4G');被使用。问题是脚本因内存耗尽而崩溃。如果我将限制设置为2G,脚本将运行到最后。它甚至没有达到1GB的峰值内存使用量。由于代码已版本化并与公司的其他人共享,我无法更改限制,而且在我的本地安装上更改它也很麻烦。我的问题是:什么会导致脚本在限制为4GB而不是2GB时崩溃?PS:我的设置是运行带有nginx和php-fpm的Debian的virtualbox机器。虚拟机有4GBRAM(尽管更改它似乎没有任何区别)。[更新]创建了一个具有64位

php - 如何删除谷歌分析 cookie?

根据新的Cookie法,我正在尝试找到一种方法,我可以使用PHP脚本从我的站点中删除所有cookie。我有一个有效的脚本,但它不会删除谷歌分析cookie。如何删除谷歌分析cookie?foreach($_COOKIEas$key=>$value){setcookie($key,'',time()-1000);setcookie($key,'',time()-1000,'/');} 最佳答案 您需要将域名作为第5个参数传入...setcookie($key,'',time()-1000,'/','.domain.com');

php - 在 Magento 中,如何读取 exception.log?

我找不到任何关于如何在Magento中读取exception.log的文档;有关如何阅读此内容的文档在哪里?如果没有文档,异常打印的顺序是什么?#0是最后发生还是最先发生?Stacktrace:#0.../html/lib/Varien/Db/Statement/Pdo/Mysql.php(110):Zend_Db_Statement_Pdo->_execute(Array)#1.../html/lib/Zend/Db/Statement.php(300):Varien_Db_Statement_Pdo_Mysql->_execute(Array)#2.../html/lib/Zend

php shell_exec 添加不需要的换行符

为什么php的shell_exec命令会在输出中添加不需要的换行符(\r\n),我该如何防止这种情况发生?测试.php:运行phptest.php结果:string(5)"test" 最佳答案 echo命令添加换行符,以便您的示例按预期工作。如果你想删除它,只需使用trim:var_dump(trim(shell_exec('echo"test"')));这将输出:string(5)"test" 关于phpshell_exec添加不需要的换行符,我们在StackOverflow上找到一个

PHP - 尝试使用 error_log() 记录会导致 500 错误

我有一个IIS服务器,它通过fastcgi为PHP提供服务。当错误日志文件被IIS_IUSRS组(IIS用户在其下运行的组)以外的用户写入时,IIS将无法写入该文件,PHP将调用error_log()导致500错误。(至少这是我的猜测,就像我删除了日志文件一样,错误消失并且重新创建了日志文件)。无论如何我可以阻止500错误的发生吗?编辑:明确地说,我知道我可以通过停止记录、记录到事件日志或不同的位置等来阻止它,但这不是我的意思。我的意思是我只是想防止500错误,我不太关心我的系统无法记录它应该在尝试时破坏站点。这正是它可能有的最糟糕的行为。我只希望500错误不会发生,网站继续工作。

web - nginx、php-fpm 和 tilde 用户目录

我在Debian系统上使用nginx和php5-fpm。我希望我的服务器能像这样服务;ip/index.html在nginx网络根目录下提供静态html页面(或文件)同样,ip/somefile.php(或index.php)通过php-fpm提供PHPip/~user/index.html在/home/user/public_html中提供静态html页面(或文件)同样,ip/~user/somefile.php(或index.php)通过php-fpm提供PHP(其中ip是IPv4或IPv6地址)。这是我对nginx的配置:server{listen80;listen[::]:80

php - 子文件夹中的 nginx 和 owncloud

我想在我的nginx服务器的子文件夹中有一个owncloud实例。但是我对opwncloud请求的一些文件有问题(似乎css和js没有加载)。这是这个虚拟主机的nginxconf文件:server{listen80;server_nameblackblock.22decembre.eu;return301https://blackblock.22decembre.eu$request_uri;}server{listen443default_serverssl;server_nameblackblock.22decembre.eu;root/srv/www/blackblock/;ac

php - 我怎样才能让 phpunit 不吞下 error_log 输出?

当从phpunit中运行error_log()时,它不会写入正常的错误日志文件。我想停止它,以便它写入文件,就像我通过浏览器访问PHP一样。assertEquals(2,1+1);}}我目前使用的是php5.5版,phpunit3.7版。这在osx和ubunutu上都会发生。这不会发生在Windows7上。 最佳答案 所以这是从命令行运行的php未记录错误的症状(已讨论here),并通过确保执行phpunit的用户对错误日志具有写入权限来解决。同样起作用的是,当从命令行调用php时使用了不同的ini文件(已讨论here)。

php - 如何在 PHP 中禁用 "referer"到 error_log 的附加?

PHP错误日志通常如下所示:[TueSep0215:46:132014][error][client192.168.0.105]blah,blah,...,referer:https://192.168.0.21/blah/blah[TueSep0215:46:132014][error][client192.168.0.105]blah,blee,...,referer:https://192.168.0.21/blah/blee如何让它们看起来像这样?[TueSep0215:46:132014][error][client192.168.0.105]blah,blah,...[Tu