如何使mod_rewrite和mod_alias一起工作?
-
30-09-2019 - |
题
我设置了一个Windows/Apache/PHP环境,以模仿共享的托管帐户,但无法获得 mod_alias
和 mod_rewrite
互相表演。两者肯定在服务器级别启用,并以每一场地为基础。
我有 d:\web\public_html\
设置为DocumentRoot。但是总的来说,它将是空的。
我有 d:\web\sites\
我将在哪个地方存储我的网站并指向使用 Alias
它在其下面具有以下目录结构:
d:\web\sites\alfa d:\web\sites\alfa\public_html d:\web\sites\bravo d:\web\sites\bravo\public_html
我的别名设置如下:(它们肯定可以工作!)
Alias /alfa d:/web/sites/alfa/public_html<Directory "D:\web\sites\alfa\public_html">
Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>
这 public_html
文件夹是我的每个站点的地方 .htaccess
文件存储,它们肯定有 mod_rewrite
启用但无法正常工作。
到目前为止,我对什么 RewriteBase
应该。我试过了 /
, /alfa
, /alfa/
和 alfa/
. 。我什至尝试过 d:\web\sites\alfa\public_html
, d:/web/sites/alfa/public_html
, d:\web\sites\alfa
和 d:/web/sites/alfa
无济于事!
这甚至可能吗?如果是这样,我做错了什么?
我显然想保留我的 Alias
指令集中 RewriteRule
s在每个位置 .htaccess
文件。
解决方案
您正在使用
AllowOverride None
指令,从而禁用任何 .htaccess
在别名目录中的文件。删除它,它应该起作用。
/
应该工作 RewriteBase
.
不隶属于 StackOverflow