我在Ubuntu 16.04上安装了以下软件包:
当我调用phpinfo()时,惟一提到gettext的是模块作者一节("GetText = Alex“),所以我假设支持是正确编译的。
看来gettext没有正确加载到PHP中,因为以下代码:
<?php
if ( false === function_exists('gettext') ) {
echo "You do not have the gettext library installed with PHP.";
exit(1);
}是否确实打印“您没有在PHP中安装gettext库”。
除了文档之外,我安装的唯一php-gettext文件是:
/usr/share/php/php-gettext/gettext.inc
/usr/share/php/php-gettext/streams.php
/usr/share/php/php-gettext/gettext.php我没有真正接触到任何php或apache配置(除了尝试安装icingaweb2之外)
有人能看到我的问题吗?
更新更多调试..。
me@phoenix:~$ ls /etc/php/7.0/apache2/conf.d/
10-mysqlnd.ini 20-dom.ini 20-intl.ini 20-mbstring.ini 20-pdo_mysql.ini 20-wddx.ini 20-xmlwriter.ini
15-xml.ini 20-imagick.ini 20-ldap.ini 20-mysqli.ini 20-simplexml.ini 20-xmlreader.ini 20-xsl.ini
me@phoenix:~$ sudo a2dismod php5
ERROR: Module php5 does not exist!
me@phoenix:~$ sudo find / -name gettext.so
/usr/lib/php/20151012/gettext.so
/usr/lib/x86_64-linux-gnu/perl5/5.22/auto/Locale/gettext/gettext.so发布于 2017-05-02 04:09:56
安装后,它应该能在盒子外工作。你重新启动Apache了吗?首先尝试终端控制台上的sudo apache2ctl restart或sudo service apache2 restart。如果两者都不能在您的系统上工作,请尝试sudo /etc/init.d/apache2 restart。
检查是否存在包含行的文件/etc/php/7.0/apache2/conf.d/20-gettext.ini (或系统上类似的路径)
extension=gettext.so必须有而不是前面有分号,否则就会被注释掉。一些安装还可以在基本的php配置文件/etc/php/php/7.0/php.ini中配置该行,但是debian派生程序的方法是在conf.d文件夹中使用额外的文件。
您可以在命令行上启用PHP模块(例如gettext)
sudo phpenmod -v 7.0 gettext如果此操作不起作用,请手动编辑配置。
最后,如上文所述,重新启动Apache服务。
还请检查Apache是否使用PHP页面中的以下行运行预期的PHPVersion7.0
echo phpversion();您可以在命令行上从多个已安装的Apache2版本中启用/禁用模块。
sudo a2dismod php5
sudo a2enmod php7.0
sudo apache2ctl restarthttps://stackoverflow.com/questions/43690687
复制相似问题