无法加载 mod_rewrite Apache 模块

Cannot load mod_rewrite Apache module

我正在尝试使用 Apache24 servermod_rewrite 模块,但我无法加载它。我知道有很多关于这个主题的问题,我已经完成了所有这些问题,但似乎没有任何效果。这些是我到目前为止所遵循的步骤---

  1. 已更改 httpd.conf 文件进行了这些更改--

一个。未注释 LoadModule rewrite_module modules/mod_rewrite.so

b。将 AllowOverride None 更改为 AllowOverride All

  1. 重新启动了 apache 服务器

  2. 使用命令提示符命令 httpd -M 检查加载的模块。我可以看到 mod_rewrite 模块已经加载。我附上下面的图片。

但是在执行所有这些步骤后,我无法在 phpinfo 中看到 mod_rewrite 作为加载模块。 如上图所示,没有 mod_rewrite 加载模块。 另外,作为一个疯狂的 hack,我什至尝试使用 .htaccess 文件重写 URLs,但这不起作用。 Apache 似乎忽略了 .htaccess 文件,尽管我已经将该文件放在我的根目录中。

 Note: I am running `PHP` as an apache module
 Using `WAMP` stack
 Using `localhost` as server

出于 URL 重写目的,我非常需要这个模块。你们能推荐一些其他的方式来加载这个模块吗?

这两天我都快崩溃了。您认为需要重新安装还是与路径依赖性有关。任何建议将不胜感激。

编辑

我尝试从虚拟主机重写 URL,因为答案表明模块已加载,它既不依赖于 .htaccess 也不依赖于 info.php。但它仍然没有重定向。我在下面添加 Virtual host 设置---

<VirtualHost *:80>
<Directory "/Apache24/htdocs">
Options FollowSymLinks 
AllowOverride All
DirectoryIndex index.html index.php
</Directory>
ServerName localhost
DocumentRoot "/Apache24/htdocs"
ErrorLog "/Apache24/logs/error.log"
CustomLog "/Apache24/logs/access.log" combined
<directory "/Apache24/htdocs">

    <IfModule rewrite_module>
            Options +FollowSymlinks
            RewriteEngine On
    </IfModule>

    <IfModule rewrite_module>
            RewriteRule   ^working.php   fun.html
    </IfModule>

</directory>
# Rewrite Rules #####################
RewriteEngine On
RewriteRule   ^working.php   fun.html
# end Rewrite Rules #################   
</VirtualHost>

当我尝试 运行 fun.html 时,上面的代码不会将其重定向到 working.php。它只是说 the requested URL /working.php was not found on this server.。 提前致谢!

如果 apachectl -M 或 httpd -M 表示模块已加载,则已加载。 php信息是 运行 由 php 脚本生成的外部事物,为什么你应该信任它而不是 httpd 自己的软件?

如果您确实需要使用 mod_rewrite,只需确保在其他重写指令之前添加 RewriteEngine on

注意:我真的会确保我需要 mod_rewrite 知道我接下来要配置什么,在很多情况下没有必要并且过度使用。

非常重要:要配置您的服务器,如果它是您的服务器 您不需要 .htaccess,并且 mod_rewrite也不依赖于它