Tag: PHP

如何获得php.ini的path?

我目前在我的/ etc / php5path中有3个php.ini文件。 树: ./php5_ ./php5_/cli ./php5_/cli/conf.d ./php5_/cli/php.ini ./php5_/apache2 ./php5_/apache2/conf.d ./php5_/apache2/php.ini ./php5_/conf.d ./php5_/conf.d/suhosin.ini ./php5_/conf.d/mysql.ini ./php5_/conf.d/mysqli.ini ./php5_/conf.d/gd.ini ./php5_/conf.d/pdo.ini ./php5_/conf.d/mcrypt.ini ./php5_/conf.d/curl.ini ./php5_/conf.d/pdo_mysql.ini ./cli ./cli/conf.d ./cli/php.ini ./apache2 ./apache2/conf.d ./apache2/php.ini ./conf.d ./conf.d/memcache.ini ./conf.d/suhosin.ini ./conf.d/mysql.ini ./conf.d/mysqli.ini ./conf.d/gd.ini ./conf.d/pdo.ini ./conf.d/mcrypt.ini ./conf.d/memcached.ini ./conf.d/curl.ini ./conf.d/pdo_mysql.ini 但我仍然觉得有什么不妥。 我试图在所有的php.ini文件中犯一些语法错误,试图重新启动Apache,并成功地重新启动。 怎么了? 我如何获得真正的php.inipath我应该编辑,以便能够看到变化?

为什么nginx可以访问/ etc / passwd?

我正尝试在我的情侣网站上设置新的VPS。 nginx,php-fpm等安装所需的服务。 我为我的网站设置了一个nginx服务器块(虚拟主机),然后尝试创build一个用于testing的php文件。 一切正常,但是我想尝试echo file_get_contents('/etc/passwd')文件进行安全检查。 而且它的工作,一个test.php文件可以访问我的VPS etc / passwd文件等等。 在我尝试echo shell_exec('ls /')并显示我的根文件夹后。 那这是正常的吗? 或者我怎样才能防止这一点。 我想要拒绝访问所有除了/var/www的www-data用户运行PHP代码。 对不起,我的英语不好。 谢谢。

PHP 5.4何时终止?

PHP 5.6 stable于2014年8月28日发布。什么时候PHP 5.4报废? 我在PHP网站上找不到任何关于它的信息。 这对我来说很重要,因为我必须决定是否必须升级旧站点。 许多托pipe提供商仍然提供PHP 5.3或5.4的服务。 有没有关于这个date在PHP社区的谈话或决定?

如何显示和loggingIIS7.5上的PHP错误?

我在IIS 7.5服务器上运行PHP 5.4.5(在Win7 64下),我有问题使PHP错误可见。 此刻,当我有一个PHP错误时,服务器发回500错误消息“页面无法显示,因为发生了内部服务器错误”。 我使用phpmanager来configurationphp。 PHP Ini正确,错误日志E_ALL和display_errors启用(错误也写入日志)。 我已经从DetailedLocalOnly中将errorMode设置为Detailed,并删除了所有的错误页面。 但它是同样的错误500 … PS:我已经阅读了所有张贴在serverfault和stackoverflow。

这些分析结果是什么意思?

我试图从旧的CMS切换到WordPress的网站。 我没有根。 我无法安装扩展程序。 香草PHP 5安装。 所以我只是把microtime放在每一端,用memory_get_peak_usage它。 旧的CMS运行了0.415秒,消耗了512千字节的内存。 WordPress运行了0.748秒,第一次消耗了9728千字节的内存,然后运行了0.429秒,从WP-Super-Cache服务器消耗了9984千字节的内存。 那么,安装WordPress是一个性能损失? 但很多stream行的博客,每天使用bazillion游客使用WordPress! 怎么样? 还是这些数字不能代表演出? 或者,也许WP超级caching破碎,没有运行得如此快? 我怎么知道这个页面在哪里? 编辑:划痕,WP超级caching只是因为某些原因不工作。 它永远不会满足它caching的内容。

如何在运行Apache的共享主机上configuration多个PHP.INI文件?

我想为共享服务器上托pipe的每个站点使用不同的PHP.INI文件。 我已经修改了每个站点的Apache vhosts文件,添加了行… PHPINIDir /srv/www/my-domain.com/ 所以现在vhosts文件/etc/apache2/sites-enabled/my-domain.com可以读取… <VirtualHost 123.54.67.89:80> ServerAdmin me@my-domain.com ServerName my-domain.com ServerAlias www.my-domain.com DocumentRoot /srv/www/my-domain.com/www/ ErrorLog /srv/www/my-domain.com/logs/error.log CustomLog /srv/www/my-domain.com/logs/access.log combined PHPINIDir /srv/www/my-domain.com/ </VirtualHost> 在重新加载Apache我得到以下错误。 Syntax error on line 8 of /etc/apache2/sites-enabled/my-domain.com: Only first PHPINIDir directive honored per configuration tree – subsequent ones ignored …fail! 只在其中一个虚拟主机文件中设置PHPINIDir指令,但每个站点都会select该PHP.INI文件。 我们在Ubuntu 10.04上运行PHP5.3.2。 有关如何实现这一目标的任何build议? PS这一点是要让每个网站生成自己的PHP错误日志。

WordPress的SFTP自动更新问题

我遇到了WordPress和ssh的问题。 基本上,我试图通过SFTP启用Wordpress自动更新。 我已经按照DigitalOcean.com上的wpftp的指示向上,我有一个名为wpftp的用户。 SSHd到服务器作为sudoer,然后我login到服务器作为该用户使用login wpftp并input密码。 然后我运行ssh-keygen -t rsa -b 4096并exit 。 作为sudo用户,我运行chown -R wpftp:www-data .ssh/ chmod 0640 .ssh/*比chmod 0700 .ssh ls -lah给我下面的.ssh文件夹 drwx—— 2 wpftp www-data 4.0K Jan 14 09:00 .ssh 目前看起来不错… cd .ssh/ cp id_rsa.pub authorized_keys chown wpftp:www-data * 给我以下 -rw-r—– 1 wpftp www-data 747 Jan 14 09:04 authorized_keys -rw-r—– 1 wpftp www-data 3.2K […]

Roundcube,上传失败

我在Ubuntu 14.04上安装了Roundcube,使用NGINX,使用静态IP,SpamAssassin,ClamAV。 发送/接收电子邮件是好的,包括下载,但不能上传任何东西发送。 组态 php.ini文件 memory_limit = 256M max_execution_time = 60 ;open_basedir = log_errors = On post_max_size = 100M file_uploads = On upload_tmp_dir = /tmp upload_max_filesize = 100M 文件夹权限 /tmp srw-rw—- 1 nginx nginx /roundcube/temp drwxrwxrwx 2 nginx nginx 4096 Feb 20 00:41 temp 在nginx.conf中,在http指令下,我已经设置好了 client_max_body_size 100m; 错误日志 -note:输出下面我删除了域名和目录名称。 FastCGI在stderr中发送:“PHP消息:PHP警告:file upload错误 – 无法在第0行的Unknown中创build一个临时文件”,同时从上游读取响应头,客户端:XXXX server:domain.com,请求:“POST / […]

IE浏览器和谷歌Chrome浏览器超时在Firefox处理好的IIS6托pipe的SSL页面上

好的,这是这个场景: 直到几个星期前,我们没有发现公司网站有任何问题。 人们没有投诉就使用它。 然后,一位客户抱怨说,该网站上的一个特定页面正在等待他,只有当他在一个充满数据的表单上进行POST操作。 我检查出来了,它也超时了。 但是,它只在Google Chrome和IE中超时,而不在Firefox中超时。 另外,在同一台服务器上,同一个页面,但是从不同域名(不受SSL保护的域名)服务的页面在任何浏览器下都不会超时。 澄清: https : //www.mysite.com/changes.php在POST上超时,但与http一样工作正常。 这种区分(SSL与非SSL)似乎很重要,因为没有其他变化。 我们的证书是有效的,Firefox检测到页面没有错误。 我查看了页面中的请求和响应头,他们都遵循正确的格式。 然后,在游览网站之后,我注意到其他一些事情。 IE和Chrome都会经常在任何基于PHP的页面上超时。 他们永远不会在静态图像或HTML文件超时。 我已经从各种不同的服务器,我的家庭和工作工作站,以及我的上网本看过这个网站。 因此,我打了病毒感染,因为我非常怀疑病毒会以完全相同的方式袭击我所访问的每一台机器。 我的设置是:服务器:Win2k3,II6,PHP 5.2.9-1。 客户端:IE7,IE8,Chrome(常规和开发通道):PHP页面频繁超时。 Firefox 2,Firefox 3:没有超时。 萤火虫显示没有错误,甚至冗长的服务页面。 我花了2天时间寻找任何可以find的技术知识,而且我的search参数太笼统了。 在IE和Chrome中,每个人都有加载SSL页面的问题,原因很多。 超时的偶然性以及任何地方都没有报告错误的事实正在使我疯狂起来。 有没有人有这样的问题的任何见解?

我怎样才能在PHP5.3中启用SQLite3的encryption?

SQLite3 :: open的php手册有这样的信息: public bool SQLite3::open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] ) 打开SQLite 3数据库。 如果构build包含encryption,那么它将尝试使用密钥。 我想为我正在处理的项目使用encryption的SQLite数据库,但在如何构buildSQLite模块(包括encryption)方面找不到任何信息。 有谁知道如何做到这一点? 也许很明显,没有人发布任何信息,或者只有商业模块可用。 我注意到SQLite的开发者提供了专有的encryption扩展 。 这是唯一的办法吗?

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.