我目前在我的/ 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我应该编辑,以便能够看到变化?
我想为共享服务器上托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 [email protected] 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错误日志。
过去我手动configuration了PHP,没有任何问题。 现在我试图在Windows 7 x64上使用PHP 5.3.1设置开发环境,并且不会加载php.ini文件! 我是Win7和64位操作系统的新手,所以这可能是我错过的东西。 哦…这也是运行在一个虚拟机(VMWare播放器),但我不知道如何可能会有所作为。 我将PHPRC环境variables设置为“c:\ php \”,将IniFilePathregistry项(在HKLM / Software / PHP和HKLM / Software / Wow6432Node / PHP中)设置为“c:\ php”,我甚至已经将php.ini复制到c:\ windows,“php -info”仍显示: Configuration File (php.ini) Path => C:\Windows Loaded Configuration File => (none) 我什至去设置读取访问“所有人”的C:\ Windows \ php.ini无济于事。 任何人都可以帮我解决这个问题吗? 提前致谢! 这里是“php -info”输出的第一位… phpinfo() PHP Version => 5.3.1 System => Windows NT DEV 6.1 build 7600 […]
我尝试从命令行运行PHP脚本,但出现以下错误: Call to undefined function mysql_connect() 但是, mysql模块被加载: root /var/www/scripts # php -m | grep mysql mysql mysqli pdo_mysql 我在Debian机器上,所以所有的模块都被加载到自己的.ini文件中: root /var/www/scripts # php –ini Configuration File (php.ini) Path: /etc/php5/cli Loaded Configuration File: /etc/php5/cli/php.ini Scan for additional .ini files in: /etc/php5/cli/conf.d Additional .ini files parsed: /etc/php5/cli/conf.d/10-pdo.ini, /etc/php5/cli/conf.d/20-apc.ini, /etc/php5/cli/conf.d/20-gd.ini, /etc/php5/cli/conf.d/20-mcrypt.ini, /etc/php5/cli/conf.d/20-mysql.ini, /etc/php5/cli/conf.d/20-mysqli.ini, /etc/php5/cli/conf.d/20-pdo_mysql.ini, /etc/php5/cli/conf.d/20-xmlrpc.ini 所以,尽pipemysql模块已经被加载,但是在PHP脚本中调用mysql_connect()时候仍然会出现错误。 有任何想法吗? […]
Ubuntu 16.04,Lighty 1.4.35,PHP 7.0.4-7ubuntu2(在Hyper-V虚拟机中) 我浏览了关于php.ini的其他所有问题(或者至less很多)。 无论我为任何指令设定了什么价值, ini_get返回不一定会返回该值。 和php的行为似乎没有任何关系。 在浏览器中没有错误消息,虽然display_errors默认是打开的。 (php_info在浏览器和CLI中显示“closures”) 在CLI中列出完整的错误消息(包括通知)并写入服务器日志,尽pipeerror_reporting的缺省值不包括E_NOTICE 。 (和php_info显示默认值,无论我把任何php.ini文件中) 所有消息都被写入lighttpd / error.log,尽pipe默认情况下log_errors是closures的。 不pipe我设置为什么):php_info()表示它已经打开。 php -h告诉, php -c <path>|<file>可以用来改变ini文件的path。 用PHP CLI调用info.php 没有其他参数:configuration文件path:CLI,加载的configuration文件:CLI 与-c /etc/php/7.0/fpm/ini.php :文件path:CLI,加载:(无) 与-c /etc/php/7.0/fpm/ :文件path:(仍然!!)CLI,加载:FPM 它在我的旧机器上运行得很好(Ubuntu 14.04.4,Lighty 1.4.33,PHP 7.0.7-4 + deb.sury.org〜trusty + 1); 但是我无法在PHP 7 ChangeLog中find任何可以解释我的问题的东西。 任何想法,而我检查其他包括ini文件一个接一个?
我正在尝试为用于上传文件的虚拟path设置特定的服务器端值。 我所有的URL都是虚拟的,请求由前端控制器调度。 我在我的网站的唯一.htaccess文件中有以下configuration: <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^ index.php [L] </IfModule> 由于upload_max_filesize不能用ini_set设置,我需要使用.htaccess文件或Apache .conf来覆盖这个设置。 考虑到我没有真正的文件/文件夹来放置.htaccess ,我认为唯一的方法是使用Apache .conf 。 我尝试了几种使用<LocationMatch> , <Location>甚至<FilesMatch>但是不知道如何使其工作。 下面是我的网站的vhost.conf样子: <LocationMatch "upload"> php_value upload_max_filesize 60M </LocationMatch> <Directory "/mysite/documentroot"> DirectoryIndex index.php AllowOverride All Order allow,deny Allow from all </Directory> 我的理论是,因为我的网站使用一个单一的FrontController,在redirect后应用<Location>规则,所以不可能从Apache端做到这一点。 除非我错过了什么,解决这个问题的最好方法是请求PHP端的function改变,以允许使用ini_set改变这些设置?
以root身份login,我使用安装了php-gd库 $ yum install php-gd 它说一切正常,所以我做到了 $ /etc/init.d/nginx restart 但我一直在工作的代码仍抱怨没有gd库,当我去检查phpinfo的输出时,没有“gd”部分。 我应该注意到yum list | grep gd yum list | grep gd显示 gd.i386 2.0.33-9.4.el5_1.1 installed gd-devel.i386 2.0.33-9.4.el5_1.1 installed gdb.i386 6.8-27.el5 installed gdbm.i386 1.8.0-26.2.1 installed php-gd.i386 5.1.6-23.2.el5_3 installed 我还将extension=gd.so手动添加到了/etc/php.ini ,并且仍然没有显示或者提示错误,这导致我相信我的php.ini在重新启动nginx时不会被重新parsing。 是否有重新启动nginx之外的东西我必须做的php.ini更改加载? 虽然没有正式的培训,但我还是有相当数量(如3年)的特别服务器pipe理经验,但是我对nginx比较陌生,以前从来没有和CentOS一起工作过,所以任何帮助都不胜感激。
目前我不能使用PHP的sqlite。 可能我需要改变我的php.ini文件中的东西。 在我的php.ini文件中,我find了2行包含“sqlite”: [sqlite] ;sqlite.assoc_case = 0 在行前面的分号是否意味着行被评论? 我应该取消注释第二行吗? 我应该将“sqlite.assoc_case”的值从0更改为其他值吗? PS我有2个php.ini文件: /etc/php5/apache2/php.ini /etc/php5/cli/php.ini 哪一个我应该改变?
我不能让我的服务器服从php.ini的设置(我试图改变memory_limit和upload_max_filesize )。 据我所知,我正在编辑正确的文件。 phpinfo()给出: Loaded Configuration File /etc/php.ini 文件权限是644 。 /etc/php.d还有一些额外的.ini文件,但是没有包含任何我想改变的密钥。 无论我做什么, phpinfo都会在“本地”和“主”列中报告默认值。 我也扫描了我的Apacheconfiguration文件,但没有发现任何与PHP相关的内容(除了加载PHP模块)。 我能够改变这些设置的唯一方法是通过添加一些php_value行到我的.htaccess 。 有什么明显的我失踪? 这是一个虚拟服务器,我可以用sudo执行root命令。 我正在运行Apache 2.1.3和PHP 5.3.3。 系统信息(来自uname -a )是: Linux sesctbapp01 2.6.18-308.1.1.el5 #1 SMP Wed Mar 7 04:16:51 EST 2012 x86_64
我正在使用wkhtmltopdf制作一个页面的pdf。 我的代码执行shell来运行使用这个wkhtmltopdf库的命令。 一切工作正常,我的wamp服务器,但是当代码运行在我的networking服务器上,它不起作用,并提供以下错误: Warning: shell_exec() has been disabled for security reasons in /home/pssptech/public_html/…/cert.php on line 272 我认为php是在服务器上以安全模式运行,这就是为什么shell执行被禁用。 但主要的问题是我无法find我的远程networking服务器上的php.ini文件。 你能告诉我在哪里可以findconfiguration文件,以便我可以禁用安全模式? 提前致谢。