Articles of PHP

服务器区域设置C vs en_US.UTF-8

我正在考虑改变我所有的服务器区域设置为C. "export LC_ALL=C" 这是常见的做法吗? 我想在LAMP服务器上会有什么副作用,或者我应该离开使用默认的“en_US.UTF-8”?

PHP会话不似乎工作

我正在设置AfterLogic Webmail Lite,它需要PHP支持会话。 它说,会议支持没有启用,但我觉得这很奇怪,因为session.save_handler 被定义: session.save_handler = files 我试着把它设置为/tmp ,但是这也不起作用。 我从Arch资源库(而不是AUR)安装PHP。 我究竟做错了什么?

未findPHP5-FPM / var / run / php5-fpm /目录

今天,我重新启动我的服务器和PHP5-FPM由于/var/run/php5-fpm/找不到启动失败。 /var/run/在重新启动时被清除,大多数服务在重新启动时重新创build它们的/var/run/目录。 我总是假设PHP5-FPM在重启时自动创build了/ var / run / php5-fpm /并且之前的重启没有问题。 PHP5-FPM是否停止在更新中创build目录,或者从来没有创build目录? 我今天之前的最后一次重新启动已经超过了30天,而且我不需要手动创build/ var / run / php5-fpm /目录来进行重启。 我是否需要将mkdir添加到我的init.d文件中以获得php5-fpm,或者还有其他build议的方法吗? 另外,为什么这个“目录未find”的错误不会发生之前呢? 其他信息: 服务器运行Debian 7(Wheezy),Nginx和MySQL。 /var/run链接到/run/ 。 /run/具有755的权限,由root拥有。 谢谢。 /etc/init.d/内容中的PHP5-FPM文件 #!/bin/sh ### BEGIN INIT INFO # Provides: php-fpm php5-fpm # Required-Start: $remote_fs $network # Required-Stop: $remote_fs $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 […]

413:请求实体太大(client_max_body_size被设置)

我真的不知道还有什么地方可以find答案。 网上的每一个指南或问题说检查client_max_body_size并解决它。 然而,对于我来说,我正在尝试对我自己的服务器上的PHP文件执行大的PUT请求。 我有… client_max_body_size 32M; 在nginx.conf服务器块中。 我知道这是有效的,因为WordPress的正确的上传大小设置为32MB。 除此之外,我发现我需要检查3个PHPvariables,我不记得它们是什么,但它们都足够远(在几百MB)。 也许我需要做一些缓冲区? 我不知道 :( 我正在使用的脚本是与第三方服务进行通信的代理脚本。 它logging所有的数据输出,这是目前为止的日志..不知道这是否可以暗示一个问题。 我认为下面是服务器正在发送的内容(因为它在日志文件中,并且正在写入STDOUT,所以我假定php代理脚本正在尝试写入它想要发送的头文件)。 当我使用chrome开发工具时,我没有看到Expect: 100-continue 。 难道这有什么关系吗? 编辑:查看PHP源代码后,它似乎是一个有100个继续的“错误”,这是搞砸了代理脚本…所以忽略下面的所有输出。 我想我会把它放在其他地方,以防万一。 "PUT /rest/cart HTTP/1.1" "HOST: staging.site.com" "CONNECTION: keep-alive" "CONTENT-LENGTH: 2695" "ACCEPT: application/json, text/javascript, */*; q=0.01" "CACHE-CONTROL: no-cache" "ORIGIN: http://staging.site.com" "X-REQUESTED-WITH: XMLHttpRequest" "USER-AGENT: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.37 Safari/537.36 […]

suhosin.memory_limit不允许PHP使用更多的内存

我有一个PHP memory_limit是256M的服务器。 一些脚本需要更多的内存,并执行ini_set('memory_limit','256M'); 但是因为Suhosin被安装并激活,所以我在日志文件中find了这个 Sep 17 14:06:42 www-01 suhosin[28934]: ALERT – script tried to increase memory_limit to 536870912 bytes which is above the allowed value (attacker '127.0.0.1', file '/xxx/generate_docs.php', line 45) 但是suhosinconfiguration有 suhosin.memory_limit = 2048M PHP memory_limit和suhosin.memory_limit值都由phpinfo()确认。 为什么PHP不能要求这个设置更多的内存? 这个脚本运行良好的任何内存限制值低于256M,但是对于更高的价值,我得到的错误和memory_limit不会改变。 <?php echo ini_get('memory_limit') . "<br>"; ini_set('memory_limit', '512M'); echo ini_get('memory_limit') . "<br>"; echo ini_get('suhosin.memory_limit') . "<br>"; echo […]

不能访问我的局域网外,我的外部IP地址,OS X上的Apache服务器

为了好玩,我一直在OS X(10.8.4)上使用Web服务器。 Apache和它的httpd.conf(/ etc / apache2 /)文件和用户名 .conf(/ etc / apache2 / users /)文件似乎都很好,我可以从我的局域网内的任何一台计算机上访问我的本地主机(只需要键入我的内部(或外部)IP)。 但是,我想暂时访问我的服务器,在我的networking之外的未来几天(比如如何访问任何网站)…. 所以我转发我的路由器上的端口80(华硕RT-AC66U,使用TCP),和Apache的httpd.conf文件已经listen 80 。 > # > # This is the main Apache HTTP server configuration file. It contains the > # configuration directives that give the server its instructions. > # See <URL:http://httpd.apache.org/docs/2.2> for detailed information. > # In particular, […]

PHPMailer脚本停止与神秘的SMTP错误消息工作

我试图通过PHPMailer库在PHP脚本中发送邮件。 以下代码已成功发送过去的电子邮件,并且没有任何警告: function mail_attachment($filename, $path, $mailto, $subject, $message) { include("PHPMailer_5.2.3/class.phpmailer.php"); include("PHPMailer_5.2.3/class.smtp.php"); $email_config = parse_ini_file('email.cfg'); $from = $email_config['sender']; $alias = $email_config['alias' ]; $smtp = $email_config['host' ]; $port = $email_config['port' ]; $mail = new PHPMailer(); $mail->SMTPDebug = 2; $mail->IsHTML(false); // send as HTML? $mail->WordWrap = 50; // set word wrap $mail->IsSMTP(); $mail->Host = $smtp; // set the […]

SBS2011 / IIS7 / PHP / Exchange 2010 – 无法通过PHP发送电子邮件

所以我有我们的服务器上运行的IIS 7 – 这是运行SBS2011和Exchange 2010 – 我试图发送一个电子邮件使用脚本 – PHPMailer,我相当有信心,我已经正确设置。 这是我从输出中得到的错误: SERVER -> CLIENT: 550 5.7.1 Unable to relay SMTP ERROR: RCPT TO command failed: 550 5.7.1 Unable to relay 人们可以幽默我,并build议解决scheme? 以下是我所尝试过的,没有奏效的: 使用匿名login和无身份validation设置接收连接器,监听每个可用的IP,或仅监听服务器的IP或127.0.0.1。 授予NT AUTHORITY /匿名login的中继权限 这是完整的(ish)日志: CLIENT -> SERVER: MAIL FROM:<info@******> (this is an address hosted by the server) SERVER -> CLIENT: 250 2.1.0 Sender […]

由于另一个FPM实例,php-fpm无法重新启动

/etc/init.d/php-fpm restart Stopping php-fpm: [FAILED] Starting php-fpm: [10-Oct-2013 21:24:37] ERROR: An another FPM instance seems to already listen on /home/php-fpm/sock/gosianozka.sock [10-Oct-2013 21:24:37] ERROR: FPM initialization failed [FAILED] 它不时发生,我不知道如何解决这个问题。 我在CentOS 6.4 64位上从ius repo使用PHP 5.4.20。 PHP 5.4.20 (cli) (built: Sep 20 2013 10:06:51) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies […]

Internet Explorer忽略来自CentOS服务器的PHP setcookie()

在过去,我们使用Windows XAMPP服务器作为内部网站。 它工作正常,但有一些间歇性的问题,我们决定搬到CentOS上的LAMP服务器。 我们今天做了切换,但事实certificate,Internet Explorer忽略了我在保存cookie时所做的每一个尝试。 正在使用的URL中没有下划线…该URL实际上与XAMPP服务器使用的URL相同,在那里我可以保存cookie而没有任何问题。 对我来说真的没有任何意义,所有的代码都是一样的。 唯一要改变的是PHP和服务器操作系统的版本。 该网站适用于除IE以外的所有其他浏览器。 我什至不能做一个简单的setcookie电话。 在一个空白的testing页上,我使用setcookie(“test”,“test”,time()+ 36000,“/”); 睡眠(5); 的print_r($ _ COOKIE); 那里什么也没有 我们的用户无法login到这个网站,因此我不知道这个问题是什么。 如果任何人可以提供任何线索或决议,我将不胜感激。 很明显,简单的答案是不使用IE浏览器,但这不是一个选项。