ini 在nginx中处理无扩展的php

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ini 在nginx中处理无扩展的php相关的知识,希望对你有一定的参考价值。

location @extensionless-php {
  rewrite ^(.*)$ $1.php last;
}

PHP 不加载 mcrypt 扩展

【中文标题】PHP 不加载 mcrypt 扩展【英文标题】:PHP doesn't load mcrypt extension 【发布时间】:2014-03-03 02:54:03 【问题描述】:

我在“已解析的其他 .ini 文件”部分的 phpinfo() 中看不到 mcrypt。 'php_mcrypt' 已安装。我将 CentOs 与带有 PHP 5.3.3 的 nginx 一起使用。

在 /etc/php.d/mcrypt.ini 我写了 extension=mcrypt.so

我试图更改 php.ini 中的扩展路径(例如 extension=/usr/lib64/php/modules/mcrypt.so),但它仍然不起作用。

【问题讨论】:

在您的 phpinfo() 中,您在“扫描其他 .ini 文件”字段中有什么值? 我看到这条路径:/etc/php.d 只是愚蠢的问题,但是:1) mcrypt.so 文件是否存在并且在正确的路径中? 2) 修改ini文件后是否重启了nginx? 呵呵,mcrypt.so 文件当然存在,每次更改后我都重新启动了 nginx :) SO 中的其他人在 CentOS 中遇到了类似的问题,他从源代码安装了 mcrypt,也许这对您也有用? ***.com/a/20552188/636348(之前去掉yum版本) 【参考方案1】:

您使用的是 Nginx,所以我假设您使用的是 php-fpm? 如果是这样,您需要重新启动 php-fpm 服务以重新加载插件。

重启nginx不会重新加载php.ini

【讨论】:

以上是关于ini 在nginx中处理无扩展的php的主要内容,如果未能解决你的问题,请参考以下文章

为啥nginx 下安装好的php扩展不能加载

用Nginx如何配置运行无扩展名PHP文件或非.PHP扩展名文件

PHP 不加载 mcrypt 扩展

关于php5.6nts+nginx 下 redis安装和php扩展

php session保存在redis中

PHP 在 Php.ini 中启用 bz2 扩展