[英]How to install PHP extensions on nginx?
我最近发现了NginX,并决定在我的服务器上试用它。 我有运行NginX并能够提供PHP和HTML文件。 但现在我想尝试安装drupal。 当试图安装它并检查要求时,我被一个要求阻止了。
PHP扩展已禁用
Drupal要求您在以下列表中启用PHP扩展(有关更多信息,请参阅系统要求页面):
GD
我试过通过apt-get install php5-gd
,它说已经安装了。 所以我创建了一个phpinfo()
文件,并检查是否启用了gd并且我无法找到它。 这与NginX或PHP有关吗? 我该怎么做才能解决这个问题?
因为您使用的是Nginx - 这必须意味着您正在使用PHP-FPM运行PHP。
安装完东西后,您需要:
sudo /etc/init.d/php-fpm restart
要么
service php5-fpm restart
在较新的ubuntu版本中
这样PHP就可以获得新的扩展。
如果您的Web服务器设置正常,只需安装php gd扩展并重新启动php脚本解释器和Web服务器。
sudo apt-get install php5-gd
sudo /etc/init.d/php-fastcgi stop
sudo /etc/init.d/php-fastcgi start
sudo /etc/init.d/nginx stop
sudo /etc/init.d/nginx start
这是一个很棒的LEMP教程http://library.linode.com/web-servers/nginx/php-fastcgi/ubuntu-10.04-lucid
如果我忘记这一点,为了将来我。
如果您一直在使用/etc/php/fpm
那么您可能不小心丢失了对conf.d
的符号链接,这意味着gd和PDO加载文件将无法使用FPM启动。
如果您只使用PHP5-FPM附带的基本配置,这将是一个问题。 如果您有自定义配置,则可以将文件包含在其他位置。
解决方案:重新创建sym-link。
cd /etc/php5/fpm
sudo ln -s /etc/php5/conf.d /etc/php5/fpm/conf.d
PHP扩展仅与PHP有关。 您选择的webserver(apache,nginx等)不会影响它们。 您很可能只需要启用gd扩展名。 如果您使用的是Ubuntu,请检查/etc/php5/conf.d文件夹并使用以下行添加gd.ini:
extension=gd.so
我在使sudo apt-get install php5-gd
工作时遇到了同样的问题。 控制台输出建议做sudo apt-get update
。 只需对所有包进行基本更新。
更新后,我运行sudo apt-get instal php5-gd
,它为我做了所有繁重的工作,包括重新启动php5-fpm并正确安装其间的所有内容。
如果您使用的是centos 7并且找不到/etc/init.d/php-fpm,您可以尝试使用systemctl restart php-fpm
,这对我systemctl restart php-fpm
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.