每个人都知道Apache和mod_rewrite的黑魔法......
我也有问题......
我刚刚从这里https://www.apachelounge.com/download/win64/下载了Apache 2.4,并使用此行启用了mod_rewrite
LoadModule rewrite_module modules/mod_rewrite.so
输出httpd.exe -v
Server version: Apache/2.4.10 (Win64)
Apache Lounge VC10 Server built: Jul 19 2014 12:25:58
我的httpd.conf http://pastebin.com/TDHpurBi
我的.htaccess http://pastebin.com/f6KV3Zd2
.htaccess适用于我的MVC-Framework
提前感谢您提供任何帮助
PS:.htaccess就像魅力一样
Server version: Apache/2.4.7 (Win32)
Apache Lounge VC10 Server built: Nov 26 2013 15:46:56
PS2:我忘了说,我在Linux下使用httpd.conf中启用的AllowOverride运行了.htaccess。所以它可能只是一个Apache-Windows问题。
答案 0 :(得分:1)
我解决了这个问题!
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
部!
然后设置
AllowOverride All
这将解决您的问题!
答案 1 :(得分:1)
你必须考虑.htaccess的别名和位置
所以,例如,如果您创建了一个名为&#34; mywebsite&#34;的别名(所以你将打开http://localhost/mywebsite到达主页)但你在子文件夹中有.htaccess,例如/ api文件夹,你需要使用这个RewriteBase指令:
RewriteBase / mywebsite / api
然后重启apache