httpd.exe: Syntax error on line 192 of C:/web/apache2.4/Apache24/conf/httpd.conf: Can't locate API module structure `php8_module' in file C:/web/php-8.3.6-devel-vs16-x64/php8apache2_4.dll: No error
这个报错有点难解决,但报错提示给了我们报错原因,所以我们就要从错误的地方来修正。
这里报错指出了第192行的php8_module有问题,老样子,打开httpd.conf文件找到第192行,得到代码:
第192行显示了地址,这里我们就顺着地址打开php8apache2_4.dll文件,用记事本或者代码的编译器都可以。打开后我们直接Ctrl+F查找,只查找文本_module,因为版本的不同,前面文本php后面的数字也就不同。这里我用文本查看器搜到了
这里我们可以看到文本文档里的不是php8_module,搜_module的原因就是这个死的信息(不仅如此,直接搜索php8_module是搜不到的,所以抄近路搜索),版本再改,这里也不会改变的,因此php8apache2_4.dll文件的是php_module,而httpd.conf的是php8_module,把这俩变量统一就行了。这里我就把httpd.conf的改成php_module(要和hph8_apache2_4.dll文件的相同才能匹配上),看看执行效果:
OK,这样一来apache常见的问题就被解决啦。开一下服务器验证一下php和apache是否能正常运行
绿色的小太阳表示我们开启成功,下面拿浏览器试验一下
华为浏览器表示php访问成功
谷歌浏览器也访问成功
这里提示一下,浏览器的不同,用到的ES引擎也不同,所以可能会有不同的页面,华为浏览器显示代码的原因是我在php文件里写入了代码:
<?php phpinfo(); ?>
所以会把代码显示出来
apache新手教程就到此为止,如果有啥不同的报错问题可以在评论区里提问