首页 > 解决方案 > Apache 似乎没有检测到我的 .htaccess 文件

问题描述

我正在通过 MAMP 在我的计算机上运行 Apache 服务器,但我似乎无法让它读取我的.htaccess文件。我看过的所有解决方案都说要确保 myAllowOverride设置为Allin httpd.conf,确实如此,但这似乎并不能解决我的问题。我知道.htaccess没有被读取,因为我在文件开头写了一些废话并且没有产生错误。更改后我还重新启动了 Apache 服务器httpd.conf。也许问题是我不完全确定我应该将.htaccess文件放在哪里。

我的 MAMP 文档根以前是MAMP > htdocs,但我将其更改为Library > WebServer > Documents,这是我所有 PHP 文件所在的位置。我正在处理的当前项目是它的子目录,比如Library > WebServer > Documents > project. 这是包含我的文件的文件夹.htaccess。我的httpd.conf文件在 中MAMP > conf > apache,相关部分如下:

# First, we configure the "default" to be a very restrictive set of 
# features.  
#
<Directory />
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>

我是否需要将目录更改为其他目录/才能使其正常工作?非常感谢任何帮助。

编辑:我在下面的评论中添加了以下<VirtualHost>httpd.conf,但同样,似乎没有任何改变:

<VirtualHost *:80>
   ServerAdmin email@site.com
   ServerName localhost:8890

   DocumentRoot /
   <Directory />
      Options FollowSymLinks
      AllowOverride None
   </Directory>
   <Directory />
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      allow from all
   </Directory>
</VirtualHost>

更新(已解决):我能够通过将 MAMP 恢复DocumentRoot到其原始版本MAMP > htdocs而不是我的Library > WebServer > Documents. Apache 现在正在读取.htaccess位于我的MAMP > htdocs > project. 感谢大家的帮助。

标签: phpapache.htaccessmamp

解决方案


尝试将Listen 80和添加Listen 443到主配置的顶部。


推荐阅读