Come posso ottenere mod_rewrite e mod_alias di lavorare insieme?
-
30-09-2019 - |
Domanda
Ho un ambiente Windows / Apache / PHP impostato per imitare un account di hosting condiviso, ma non può ottenere mod_alias
e mod_rewrite
di giocare bene uno con l'altro. Entrambi sono sicuramente abilitati a livello di server e su una base per-sito.
Ho d:\web\public_html\
impostato come DocumentRoot. Ma in generale sarà vuota.
ho d:\web\sites\
che è dove sarò l'archiviazione miei siti e indicando con Alias
ed ha la seguente struttura di directory sotto di esso:
d:\web\sites\alfa d:\web\sites\alfa\public_html d:\web\sites\bravo d:\web\sites\bravo\public_html
Ho alias impostati come segue: (e sicuramente il lavoro!)
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>
La cartella public_html
(s) sono dove i miei file .htaccess
per-sito sono memorizzati e che sicuramente hanno mod_rewrite
abilitato ma non funziona correttamente.
Finora ho scollarsi con quello che dovrebbe essere RewriteBase
. Ho provato /
, /alfa
, /alfa/
e alfa/
. Ho anche provato d:\web\sites\alfa\public_html
, d:/web/sites/alfa/public_html
, d:\web\sites\alfa
e d:/web/sites/alfa
inutilmente!
Questo è anche possibile? Se è così, cosa sto facendo di sbagliato?
Mi piacerebbe, ovviamente, come per mantenere le mie direttive Alias
centralizzate e RewriteRule
s nei file .htaccess
per sito.
Soluzione
Si utilizza il
AllowOverride None
direttiva e quindi disabilitando tutti i file nella directory .htaccess
alias.
Rimuovere questo, e dovrebbe funzionare.
/
dovrebbe funzionare per RewriteBase
.