php - Apache 2.4、.htaccess 和 php 指令错误

标签 php apache .htaccess centos8

我已经升级到 Centos 8,发现自己必须应对 Apache 2.4 中的变化。我已经开始让它工作了,但是在 .htaccess 中进行简单设置时遇到了一个令人困惑的错误:

#   .htaccess
#   PHP Time Zone
    php_value date.timezone Australia/Melbourne

我得到了可怕的错误:

The server encountered an internal error or misconfiguration and was unable to complete your request.

联系服务器管理员是没有意义的,因为那是我。

error_log 文件包含以下内容:

Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration

这在过去一直在 Apache 2.4 上有效,当我在 XAMPP 上使用 Apache 2.4 时也同样有效。很明显,其他配置中存在某些问题,可能在 httpd.conf 中导致其崩溃。

我缺少什么设置,或者我应该更改什么设置?

更新

正如下面 @Chi.C.J.RajeevaLochana 的回答,解决方案在于使用正确的 MPM。就我而言,在文件 00-mpm-conf 中:

  • 注释掉

    LoadModule mpm_event_module 模块/mod_mpm_event.so

  • 取消注释

    LoadModule mpm_prefork_module 模块/mod_mpm_prefork.so

有关更多信息,请参阅:

最佳答案

当您使用 mod_mpm_event 或 mod_mpm_worker 而不是 mod_mpm_prefork 时,您将无法使用 PHP 模块。这是因为 mod_mpm_event 和 mod_mpm_worker 是线程模块。并且PHP模块不是线程安全的。

如果您不确定如何执行此操作,请查看 Soufiane ELH 的教程,该教程应位于此答案的上方/下方。

关于php - Apache 2.4、.htaccess 和 php 指令错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61494247/

相关文章:

javascript - 在 Javascript 重定向窗口位置后获取页面的 URL 如何使用 Src LInk

apache - 为什么我的 .htaccess 文件重定向到完整服务器路径而不是相对路径?

java - 如何安装 Xuggler?

linux - 与 CakePHP 的符号链接(symbolic link)

python - 使用 Python 3.6、Apache 2.4 和 Django 1.11 在 Ubuntu 上安装 mod_wsgi

apache - .htaccess 重写规则不会使用 unicode 字符

facebook - 创建排除 facebook 的 301 重定向

php - actionscript 3.0 是否强大到足以最终成为我唯一的服务器端语言?

php - 多数据库查询感知性能

php - 使用 $query = mysql_query 选择更多表