这是在 W10 上。
我一直在尝试替换功能失调的 Apache-PHP 设置。
我在 D:\apps 下安装(即解压)了 Apache2.4.57。我的 php 版本位于 D:\apps\php\php7.4.33。
httpd.conf 结束如下(从运行正常的机器上复制):
# LoadModule php7_module "d:/apps/php/php7.4.33/php7apache2_4.dll"
# AddType application/x-httpd-php .php
# PHPIniDir "D:/apps/php/php7.4.33"
# AddType text/css .css
# AddType text/javascript .js
像上面一样注释掉所有这些行后,服务就会启动。如果我取消注释所有行,或者仅取消注释“LoadModule”行,服务将无法启动。我转到 EventViewer:“Apache2.4 服务因以下服务特定错误而终止:函数不正确。”
太有启发了,感谢 Apache!
文件 php7apache2_4.dll 肯定存在。
我也尝试使用 PHP v8:
LoadModule php8_module "d:/apps/php/php8.2.1/php8apache2_4.dll"
并且:
LoadModule php_module "d:/apps/php/php8.2.1/php8apache2_4.dll"
... 同样的问题。
你知道我可能做错了什么/应该做什么吗?
编辑
刚刚发现(下载了最新的 PHP 版本 8.2.5)命令提示符下的“php -v”给出了以下令人讨厌的消息:
PHP 警告:'C\WINDOWS\SYSTEM32\VCRUNTIME140.dll' 14.0 与此 PHP 版本不兼容,该版本与 14.29 链接,位于未知的第 0 行
... 我可以想象这可能会阻止服务启动。目前正在调查我现在需要克服哪些困难。
答案1
是的...在这个特殊情况下,我发现我缺少“Microsoft Visual C++ Redistributable for Visual Studio 2022”,可用这里,页面底部的“其他工具、框架……”下。
下载后,运行.exe,重新启动...一切正常。