Articles of PHP

在crontab里面用sudo执行php

我写了一个PHP脚本,执行需要sudo权限,因为它执行一些其他系统相关的东西。 所以我已经添加到crontab -e但是我看不到,我的脚本运行正常。 命令: */5 * * * * /usr/bin/php /srv/www/php/script.php && date > /srv/www/php/mylog.log 唯一的输出是date。 没有来自我的脚本的回应。 它是可执行文件(chmod a + x),如果我在terminal中使用和root相同的命令,一切都可以。 所以这取决于crontab -e ? 另外我确定,我的cronjob正在运行(/ var / log / syslog): Oct 23 16:40:01 $MYMACHINE CRON[13797]: (root) CMD (/usr/bin/php /srv/www/php/script.php && date > /srv/www/php/mylog.log) 而这个每5分钟。 另外我的“mylog.log”总是得到最新的时间戳,所以我猜,里面的脚本可能有问题。 编辑:我已经创build了另一个testing脚本来检查,如果脚本得到执行或不。 但脚本被执行了,所以这是脚本内部的问题。 我正在尝试将dynamicIP添加到iptables链中: #!/bin/bash value=`cat whitelist.txt` #echo "$value" for i […]

在Ubuntu 14.04.3 LTS上,PHP脚本错误“exec():无法分叉……”

我运行unit testing脚本和testing用例设置我需要不时运行shell命令。 因此在unit testing执行期间shell命令运行了大约50次。 它在CentOS版本6.6(最终)服务器上正常工作,但在Ubuntu 14.04.3 LTS上不起作用。 问题是,大约20次的shell脚本执行后,我得到以下错误: exec(): Unable to fork [$(which mysql) -u user -ppwd test_db < "/opt/jenkins/workspace/some – project/application/../tests/Application/assets/sql/test_db.sql" 2> /dev/null] 我已经检查了互联网上的所有主题,没有人帮助我。 我已经增加了进程号码,并打开文件限制到巨大的价值 # ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 3885 max […]

更正MaxClientsconfiguration

我有这个服务器: 4 Xeon CPU 4G Ram Centos5+Apache+php+Mysql+Redis+directadmin 现在我有一个问题。 由于我的用户范围广泛, Apache无法处理所有这些数据,并将其放入系统变得非常缓慢的队列中。 我search,似乎如果有一个良好的MaxClientsconfiguration,我可以克服这一点。 但是我能解释一下这个系统的configuration是什么? 当系统变慢时,我的CPU和内存不足! 更新: 这是htop命令的结果: 在这里,当Tasks:部分前面的数字大于600时,我的服务器开始减速! 这是atop命令的结果:

Laravel 5.1部署您的需求无法parsing为可安装的一组软件包

当我试图部署我的laravel项目,并做一个php composer.phar安装我得到这个恼人的错误。 我通过与git克隆git拉我的项目。 而当我冲浪到我的域名,我想看到我的应用程序显然:)。 我已经安装了一个正确的版本的Apache,MySQL和PHP。 一切都在运行。 错误: Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Your requirements could not be resolved to an installable set of packages. Problem 1 – Installation request for brianmcdo/image-palette dev-master -> satisfiable by brianmcdo/image-palette[dev-master]. – brianmcdo/image-palette dev-master requires ext-gd * -> the requested PHP extension […]

如何正确使用php与多个域的sendmail

我在服务器上托pipe两个使用wordpress创build的网站。 这些网站应该能够发送邮件给用户,但几乎接收器(除了可能是Gmail)失败。 我发现问题是邮件是由用户www-data@myserver ,并被拒绝。 我想configuration我的php.ini使用/usr/sbin/sendmail -f提供一个值,以便电子邮件将有一个有效的域。 我的问题是如何能够在这里指定多个域,以便每个网站将发送邮件与地址[email protected]与mydomain匹配到每个网站的一个。 我看到我可以使用PHP的mail()并提供了一个参数与-f但它已被弃用之前,WordPress的wp_mail()函数。 我怎样才能达到我想要的?

为什么新的应用程序池标识具有写入权限?

我正在通过FastCGI使用PHP(各种版本)运行IIS 8.5。 模拟在FastCGI的PHPconfiguration中。 应用程序池被设置为使用应用程序池标识。 实际上,如果我实际上拒绝了写入文件的访问权限,那么它的行为是相应的,但是,默认情况下,似乎所有文件都可写入我的网站。 查看有效权限说我的应用程序池标识(IIS AppPool \ PoolName)应该没有任何权限分配。 有一些默认帐户,应用程序池标识inheritance我需要进行调整,以防止写访问默认情况下。 我所读的一切都似乎表明,应用程序池标识应该默认为只读访问应用程序分配的虚拟文件夹,但这与观察到的行为不匹配(具体来说,PHPBB3抱怨configuration文件是可写的,设置写入权限,我可以通过论坛上传文件)。 什么可能会干扰权限,或者是我对预期的默认行为的理解不正确?

如何只允许一个站点使用PHP的exec()函数

我在CentOS 7上有一个简单的Apache,mod_php服务器。我已经禁用了php.ini中的exec函数,但是我需要在一个Vhost上使用它。 现在显然我知道我不能使用多个php.ini文件,我知道我不能更改php.ini文件之外的disable_functions设置,所以我尝试了其他的想法。 显然,我的第一个select是使用fastcgi或者suPHP等,但是如果不打断服务器,我不能让它们工作,尽pipe我最终可以使它们工作,但我宁愿find一个不同的解决scheme,并坚持简单的mod_php。 我的第二个想法是安装Nginx和php-fpm并让它在另一个端口上侦听,但是尽pipe将disable_functions设置为空值,它仍然读取php.ini文件,从而禁用了php_exec函数。 那么有没有一个相对简单的方法来实现这一点,而不必重置与FastCGI的Apache?

小型查询等待大型查询来parsingCentos 6.5上的MYSQL PHP

我有一个Centos 6.5,而且我在Tomcat上运行Vaadin,这个应用程序对报表和东西的查询非常重要。 我的问题是,当我从PHP连接到MYSQL时,当我做了一个小的查询时,来自PHP的查询总是等待在Tomcat上请求Vaadin的大量查询。 我尽我所能来解决这个问题。 我认为这可能是一个Apache的问题,我和Apache一起安装和configurationnginx,尝试在nginx上进行php查询(当然,端口改变了,在81上),单独的为Vaadin分开Apache。 有任何想法吗 ???

在Ubuntu 14.04上删除过期的PHP会话文件

从MySQL开始的一切都无法启动。 经过一些networkingsearch后,我发现服务器耗尽了inode。 df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/simfs 500000 500000 0 100% / none 131072 56 131016 1% /dev none 131072 1 131071 1% /sys/fs/cgroup none 131072 63 131009 1% /run none 131072 4 131068 1% /run/lock none 131072 1 131071 1% /run/shm none 131072 1 131071 1% /run/user 进一步的谷歌search导致我假设PHP会话文件永远不会被删除…这似乎是真实的,因为运行ls php5 […]

PHP-FPM在拥有太多用户的同时,在繁重的工作中崩溃

我有一个服务器运行Apache / 2.2.22(Debian),PHP 5.6.17 FPM和MySQL 5.6.25。 该项目使用名为Redaxo的CMS运行(我不认为这很重要,但是我会告诉你)。 在Redaxo中有一些function需要一些时间(例如删除caching并重build需要1-2分钟)。 在这段时间,当其他用户来到网站FPM崩溃与500 Internal Server Error ,我不得不重新加载页面多次,直到服务器错误消失,并完成过程。 我注意到,只有在网站上同时有太多的用户,而且只有在繁重的操作完成时,才会发生这种情况。 10个用户在同一时间只是冲浪=没有问题 10个用户同时上网,而caching删除= 500错误给大家。 我通过禁止除了我以外的每个人的网站(.htaccess否认/允许与IP)检查了这一点。 然后我做了沉重的手术,没有问题。 一旦多人再次来到现场,问题又来了。 会是什么呢? 你需要从我那里得到什么信息? 这些值在php-fpm.conf中设置(未注释) [global] pid = /run/php5-fpm.pid error_log = /var/log/php5-fpm.log emergency_restart_threshold = 0 include=/etc/php5/fpm/pool.d/*.conf 这些值在项目特定的fpm.conf中设置(未注释) [projectname] user = projectname group = projectname listen = /var/run/php5-fpm-projectname.sock listen.owner = projectname listen.group = projectname listen.mode = 0660 pm […]