繁体   English   中英

PHP.ini在Laravel Homestead中向phpinfo()显示不同的值

[英]PHP.ini showing different values to phpinfo() in Laravel Homestead

我试图修改Laravel homestead的PHP.ini文件以启用short_open_tags

按照joepferguson的建议,我在after.sh文件中添加了以下几行:

sudo sed -i "s/short_open_tag = Off/short_open_tag = On/" /etc/php/5.6/fpm/php.ini
sudo sed -i "s/short_open_tag = Off/short_open_tag = On/" /etc/php/7.0/fpm/php.ini
sudo sed -i "s/short_open_tag = Off/short_open_tag = On/" /etc/php/7.1/fpm/php.ini
sudo sed -i "s/short_open_tag = Off/short_open_tag = On/" /etc/php/7.2/fpm/php.ini

现在,当我通过SSH连接到家园服务器并执行以下操作时:

vagrant@homestead:/etc/php/7.1/fpm$ cat php.ini | grep short_
; short_open_tag
short_open_tag = On

它清楚地表明它已经开启。 但是,当我运行以下代码时,它们仍然无法正常工作:

它表明它确实加载了相同的php.ini文件: /etc/php/7.1/fpm/php.ini

但是,shortopen标签设置为Off,进一步向下文件phpinfo():

在此输入图像描述

如果我运行命令php --ini我得到以下内容:

vagrant@homestead:/etc/php/7.1/fpm$ php --ini
Configuration File (php.ini) Path: /etc/php/7.2/cli
Loaded Configuration File:         /etc/php/7.2/cli/php.ini
Scan for additional .ini files in: /etc/php/7.2/cli/conf.d
Additional .ini files parsed:      /etc/php/7.2/cli/conf.d/10-mysqlnd.ini,
/etc/php/7.2/cli/conf.d/10-opcache.ini,
/etc/php/7.2/cli/conf.d/10-pdo.ini,
/etc/php/7.2/cli/conf.d/15-xml.ini,
/etc/php/7.2/cli/conf.d/20-bcmath.ini,
/etc/php/7.2/cli/conf.d/20-calendar.ini,
/etc/php/7.2/cli/conf.d/20-ctype.ini,
/etc/php/7.2/cli/conf.d/20-curl.ini,
/etc/php/7.2/cli/conf.d/20-dom.ini,
/etc/php/7.2/cli/conf.d/20-exif.ini,
/etc/php/7.2/cli/conf.d/20-fileinfo.ini,
/etc/php/7.2/cli/conf.d/20-ftp.ini,
/etc/php/7.2/cli/conf.d/20-gd.ini,
/etc/php/7.2/cli/conf.d/20-gettext.ini,
/etc/php/7.2/cli/conf.d/20-iconv.ini,
/etc/php/7.2/cli/conf.d/20-igbinary.ini,
/etc/php/7.2/cli/conf.d/20-imap.ini,
/etc/php/7.2/cli/conf.d/20-intl.ini,
/etc/php/7.2/cli/conf.d/20-json.ini,
/etc/php/7.2/cli/conf.d/20-mbstring.ini,
/etc/php/7.2/cli/conf.d/20-msgpack.ini,
/etc/php/7.2/cli/conf.d/20-mysqli.ini,
/etc/php/7.2/cli/conf.d/20-pdo_mysql.ini,
/etc/php/7.2/cli/conf.d/20-pdo_pgsql.ini,
/etc/php/7.2/cli/conf.d/20-pdo_sqlite.ini,
/etc/php/7.2/cli/conf.d/20-pgsql.ini,
/etc/php/7.2/cli/conf.d/20-phar.ini,
/etc/php/7.2/cli/conf.d/20-posix.ini,
/etc/php/7.2/cli/conf.d/20-readline.ini,
/etc/php/7.2/cli/conf.d/20-shmop.ini,
/etc/php/7.2/cli/conf.d/20-simplexml.ini,
/etc/php/7.2/cli/conf.d/20-soap.ini,
/etc/php/7.2/cli/conf.d/20-sockets.ini,
/etc/php/7.2/cli/conf.d/20-sqlite3.ini,
/etc/php/7.2/cli/conf.d/20-sysvmsg.ini,
/etc/php/7.2/cli/conf.d/20-sysvsem.ini,
/etc/php/7.2/cli/conf.d/20-sysvshm.ini,
/etc/php/7.2/cli/conf.d/20-tokenizer.ini,
/etc/php/7.2/cli/conf.d/20-wddx.ini,
/etc/php/7.2/cli/conf.d/20-xmlreader.ini,
/etc/php/7.2/cli/conf.d/20-xmlwriter.ini,
/etc/php/7.2/cli/conf.d/20-xsl.ini,
/etc/php/7.2/cli/conf.d/20-zip.ini,
/etc/php/7.2/cli/conf.d/25-memcached.ini,
/etc/php/7.2/cli/conf.d/90-blackfire.ini,
/etc/php/7.2/cli/conf.d/zray.ini

所以homestead在php.ini上加载了很多ini文件,对吧? 除了网站使用FPM,所以我去了那个目录并运行以下内容:

vagrant@homestead:/etc/php/7.1/fpm/conf.d$ grep -R "short_open"

但它没有任何回报。 所以没有其他INI文件覆盖第一个,所以为什么short_open_tags仍然没有在网页上工作?

确保你正在跑步

sudo service php5.6-fpm restart sudo service php7.0-fpm restart sudo service php7.1-fpm restart sudo service php7.2-fpm restart sudo service nginx restart

或者只是重新启动您正在编辑设置的版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM