Articles of PHP

PHP会话目录正在填满和溢出

运行PHP,Apache2 …我们的login停止工作,并试图抓住会议数据。 昨天晚上七点,它全部停止工作。 我发现会议目录正在充满大量的会议每秒。 如果我删除所有的会议,它会迅速填补。 由于某种原因,访问日志已停止工作。 这听起来像是一个攻击…如果是这样,我能做些什么来阻止它?

Apache开始于“/etc/httpd/conf/httpd.conf中的语法错误:无效的命令'删除'”

在我更改了php.ini最大file upload大小和最大文章大小后,重新启动Apache显示标题中的错误。 为什么? 而如何解决呢? # vi /etc/php.ini # service httpd restart # service httpd start Starting httpd: Syntax error on line 304 of /etc/httpd/conf/httpd.conf: Invalid command 'remove', perhaps misspelled or defined by a module not included in the server configuration 304行如下: <Directory /> Options Includes Indexes FollowSymLinks MultiViews remove word Indexes Options Includes FollowSymlinks MultiViews […]

RHEL 6.6:用于php54的redis-package

红帽企业Linux服务器6包含php54软件包,除了5.3版本的普通php软件包。 对我来说不幸的是,一个php-redis包存在,但没有php54-redis包。 我是否必须自己编译扩展名,或者是否存在包含该包的非官方存储库,或者是否有另一种获得5.4的Redis扩展的方法?

脚本尝试运行时拒绝了权限

我有一个PHP脚本运行下面的命令使用exec() /root/gsutil/gsutil <COMMAND> 在我的错误日志中,我收到以下内容: sh: 1: /root/gsutil/gsutil: Permission denied 有谁知道我可以做什么让我的PHP脚本来运行该命令?

SERVER_NAME vs HTTP_HOST(Nginx + PHP)

我有一个catchall服务器configuration,获取所有子域,并指向他们相同的PHP脚本。 有数千个子域,它们是dynamic创build的。 PHP脚本使用HTTP_HOST来标识子域,并相应地从数据库中获取标识的子域的内容。 它工作正常,但我收到来自Nginx的这个日志: PHP message: PHP Notice: Undefined index: HTTP_HOST in /usr/share/nginx/html/index.php on line 9 我search了网页,发现HTTP_HOST并不总是被设置的。 PHP手册说: 'HTTP_HOST'=来自当前请求的Host:头部的内容( 如果有的话) 。 所以我想过使用variablesSERVER_NAME而不是HTTP_HOST。 但是当我这样做时,SERVER_NAME不包含子域部分。 它总是会返回我在Nginxconfiguration中写的东西,那就是~^(.+)$ 。 有没有办法改变Nginxconfiguration,以便SERVER_NAME包含dynamic子域? 例如,要返回类似sub1.mydomain.com,sub2.mydomain.com等。 有没有解决这个问题的方法? 我的实际configuration是: server { listen 80 default_server; server_name ~^(.+)$; }

Roundcube + Dovecot:尝试login时出现SSL错误

我使用Dovecot 2.2.13,Postfix 2.11.3和Roundcube 1.1.1连接到它来build立一个邮件服务器。 Roundcube在nginx / php-fpm的不同服务器上运行。 两台服务器都运行着Debian Jessie的最新更新,可以互相ping通。 来自Roundcube主机的nmap显示端口993打开并可访问。 另外,我似乎得到了正确的端口连接,但我似乎无法成功地将Roundcube连接到达夫科特。 Dovecotconfiguration了以下在端口993上运行的SSL设置: /etc/dovecot/conf.d/10-ssl.conf ssl_protocols = TLSv1.2 TLSv1.1 TLSv1 !SSLv2 !SSLv3 ssl_cipher_list = ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES128:DH+AES:ECDH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5 /etc/dovecot/dovecot.conf auth_verbose=yes auth_debug=yes auth_debug_passwords=yes mail_debug=yes verbose_ssl=yes auth_verbose_passwords=plain 有了这些设置,我可以从Android邮件应用程序获得TLS连接,并接收邮件,所以我知道Dovecot正在倾听和沟通。 Roundcube托pipe在与Dovecot不同的服务器上,并针对IMAPSconfiguration了以下设置。 $config['default_host'] = 'tls://mail.domain.tld'; $config['imap_conn_options'] => array( 'ssl' => array( 'ciphers' => 'ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES128:DH+AES:ECDH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5', ), ); 在mail.log中成功的login看起来像这样: dovecot: imap-login: Debug: SSL: elliptic curve secp384r1 will […]

如何pipe理后缀到Codeigniter控制器

我目前有一个PHP脚本的后缀pipe道来处理通过别名的电子邮件。 catchall: |/var/www/vhosts/website/httpdocs/scripts/incoming_mail.php 但是,我希望使用我的CI项目中提供的数据库configuration等,所以我需要提供一个路线,如: catchall: |/var/www/vhosts/website/httpdocs/cli.php /incoming_mail 期望的结果是我运行incoming_mail控制器。 如果我尝试上面的电子邮件是反弹以下内容: Action: failed Status: 5.2.0 Diagnostic-Code: X-Postfix; cannot append message to file /incoming_mail: cannot create file exclusively: Permission denied 任何帮助是极大的赞赏!

哪个“try_files”nginx指令最适合零日漏洞?

到目前为止,我一直在我的nginxconfiguration文件的php位置使用以下内容 try_files $uri $uri/ /index.php?$query_string; 但是,我刚刚在Wordpress Codex指南中看到,对于零日漏洞,应该使用以下内容: try_files $uri =404; 两者在安全性方面有什么区别?

如何看看什么PHP脚本运行顶部或ps aux

有没有一个命令,我可以运行,将揭露什么脚本显示top或PHP ps aux的PHP进程

如何禁用PHP 5.6中的一些扩展?

我已经在Centos 6.7服务器上安装了php 5.6 yum –enablerepo=remi,remi-php56 install -y php-mysqlnd php-gd php-mbstring php-mcrypt php-xml php-fpm 我有以下的PHP扩展启用: <?php print_r(get_loaded_extensions()); ?> [0] => Core [1] => date [2] => ereg [3] => libxml [4] => openssl [5] => pcre [6] => zlib [7] => filter [8] => hash [9] => Reflection [10] => SPL [11] => session [12] => […]