Articles of PHP

本地开发机器上的PHP邮件()函数痛苦缓慢

背景:如果您为开发目的而设置了一个本地apache服务器,那么您可能会遇到sendmail需要很长时间(至less一分钟)才能发送邮件的问题。 如果您尝试使用您生成的电子邮件debugging问题,这是非常令人沮丧的。 在互联网上有几个论坛post讨论这个问题。 然而,没有一个主题描述了我有限的知识足够的细节做什么。 以下是适合我的步骤: 1)使用这个命令find你的主机名(以防你忘记了): :~$ cat /hosts/hostname myhostname 2)编辑文件/etc/hosts ,并确保第一行是以下内容: 127.0.0.1 localhost.localdomain localhost myhostname 3)编辑sendmailconfiguration文件(Ubuntu中的/etc/mail/sendmail.cf )并取消注释#O HostsFile=/etc/hosts 4)重新启动电脑。 现在计算机启动要快得多,mail()函数应该立即返回。 但是,除非您按照步骤5进行,否则电子邮件实际上不会被发送。 5)每当使用邮件function时,您都必须重新使用sendmail'-f'选项。 例如: mail('[email protected]', 'the subject', 'the message', null, '[email protected]'); 我的同事服务失败者的问题是: 还有什么更改可以使我不必使用sendmail -f选项? 虽然添加-f选项并不难,但是当您的CMS(例如Drupal)在发送邮件时不使用-f选项时,这是一个问题。 你需要破解一个核心模块来添加这个选项。

php-mysqlnd或php-mysql

长话短说:只安装了Ubuntu 12.04(基于Debian的),nginx,php-fpm和mysql。 现在我需要PHP的MySQL驱动程序,但是我应该select哪一个? 哪个更好的php-mysqlnd或php-mysql?

神秘的空$ _POST数组

我有以下的HTML / PHP页面: <?php if(empty($_SERVER['CONTENT_TYPE'])) { $type = "application/x-www-form-urlencoded"; $_SERVER['CONTENT_TYPE'] = $type; } echo "<pre>"; var_dump($_POST); var_dump(file_get_contents("php://input")); echo "</pre>"; ?> <form method="post" action="test.php"> <input type="text" name="test[1]" /> <input type="text" name="test[2]" /> <input type="text" name="test[3]" /> <input type="submit" name="action" value="Go" /> </form> 正如你所看到的,表单将被提交,期望的输出是一个POST数组,其中包含一个包含填充值的数组和一个包含值“Go”(button)的条目“action”。 但是,无论我在田间input什么样的价值, 结果总是: array(2) { ["test"]=> string(0) "" ["action"]=> string(2) "Go" } string(16) "test=&action=Go&" […]

内存使用情况编号top / htop

有人可以解释这个最高的输出。 每个PHP进程正在使用总内存或已用内存的30%? 而且,跨所有PHP进程的组合使用的内存怎么会远远超过我的系统内存呢? 这是共享内存吗? 提前致谢 top – 14:15:34 up 2 days, 12:38, 1 user, load average: 0.97, 1.03, 0.93 Tasks: 124 total, 1 running, 123 sleeping, 0 stopped, 0 zombie Cpu(s): 4.9%us, 0.3%sy, 0.0%ni, 94.6%id, 0.0%wa, 0.0%hi, 0.1%si, 0.1%st Mem: 1029508k total, 992140k used, 37368k free, 150404k buffers Swap: 262136k total, 2428k used, 259708k free, […]

为SERVERconfiguration的RSA证书不包含与服务器名称匹配的ID

我最近启动了一个LAMP服务器(所有最新版本)w / WordPress上,我试图安装我最近购买的SSL证书。 当我重新启动apachectl ,error_log给我这个: [Tue Feb 25 01:07:14.744222 2014] [mpm_prefork:notice] [pid 1744] AH00169: caught SIGTERM, shutting down [Tue Feb 25 01:07:17.135704 2014] [suexec:notice] [pid 1765] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Tue Feb 25 01:07:17.217424 2014] [auth_digest:notice] [pid 1766] AH01757: generating secret for digest authentication … [Tue Feb 25 01:07:17.218686 2014] [lbmethod_heartbeat:notice] [pid 1766] […]

Apache文件协商失败

我在使用Apache 2.2.22 + PHP 5.4.0的主机上遇到以下问题 我需要在用户发出请求时提供文件/home/server1/htdocs/admin/contents.php http://server1/admin/contents ,但是我在服务器error_log上获得了这个消息。 Negotiation: discovered file(s) matching request: /home/server1/htdocs/admin/contents (None could be negotiated) 请注意,我已启用mod_negotiation并在相关虚拟主机的选项中包含MultiView: <Directory "/home/server1/htdocs"> Options Indexes Includes FollowSymLinks MultiViews Order allow,deny Allow from all AllowOverride All </Directory> 我也使用mod_rewrite ,以下.htaccess规则: <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^\./]*)$ index.php?t=$1 [L] </IfModule> 这似乎很奇怪,但在PHP 5.3.6相同的盒子,它曾经正常工作。 我只是想升级到PHP 5.4.0,但我无法解决这个谈判问题。 任何想法,为什么Apache不能匹配contents.php时要求的content […]

MySQL不能通过“localhost”连接,只有127.0.0.1

这对我来说有点神秘。 我可以连接到MySQL的唯一方法是,如果我通过“127.0.0.1”调用它…例如,我的PHP连接脚本将不会与本地主机 我运行Mac OS X Lion,内置apache2,MySQL,PHP,phpMyAdmin 中mysqladmin: count 0 debug-check FALSE debug-info TRUE force FALSE compress FALSE character-sets-dir (No default value) default-character-set auto host (No default value) no-beep FALSE port 0 relative FALSE socket (No default value) sleep 0 ssl FALSE ssl-ca (No default value) ssl-capath (No default value) ssl-cert (No default value) ssl-cipher (No […]

如何用yum在CentOS升级到最新的PHP版本?

我发现了一些关于这个的博客文章,但是对可能的副作用缺乏描述。 我真的可以使用一些详细的这些步骤: 如何添加一个提供PHP 5.4到yum的回购 这可以在CentOS中无缝地replace当前的PHP版本吗? 当它支持PHP 5.4时,如何切换回官方回购? (目前5.3.3在我的系统中) 有没有可能破坏我目前使用的PHP模块? 注意 人们在新版本中使用相同方法成功升级,并build议删除问题中的特定版本。 虽然在新版本实际上打破了某些东西的情况下固定版本是好事,但是我想保留社区提出的最新成功版本作为备注。 如果您在其他版本上成功升级,请随时更新。 PHP版本:5.4,5.5,5.6 CentOS版本:5,6

apc.php在哪里?

使用Ubuntu服务器10.4,我apt-getted php-apc apc.php文件在哪里,我打算复制? 谢谢!

为什么有一个弱的mysql用户密码不好?

我被提出了一个论点:“你不需要一个强大的mysql用户密码,因为为了使用它,他们已经有权访问你的服务器了。” 我们正在谈论一个4位数字的密码,这是一个真实商业网站上的标准英文字典词汇。 不用我自己的知识和经验来影响答案,我想向他们展示一些无私的第三方来源的答复。 有人在乎这个呢? 编程/实际答案将不胜感激。