2011-08-18 20 views
8

Sto usando CodeIgniter e ho appena installato uno stack LAMP su un server cloud Ubuntu 10.10..htaccess non funziona anche se allowoverride è abilitato

Tutto funziona alla grande, e ho il modulo userdir Apache abilitato in modo che la mia directory home si trovi a /home/myapp/public_html, e accedo ad essa andando a servername/~myapp.

Sfortunatamente, la riscrittura .htaccess non sembra funzionare: causa un 404 che dice impossibile trovare the file /home/myapp/public_html/index.php - errore 404.

Mod_rewrite è abilitato.

Sono consapevole del fatto che è necessario impostare la direttiva AllowOverride All: l'ho impostata su /etc/apache2/sites-enabled/default - tuttavia la riscrittura non sembra funzionare correttamente.

Il mio file .htaccess contiene semplicemente:

RewriteEngine on 
RewriteCond $1 !^(index.php|img|stylesheets|js|icons|robots\.txt|user_guide) 
RewriteRule ^(.*)$ index.php/$1 [L] 

E il mio /etc/apache2/sites-available/default assomiglia:

<VirtualHost *:80> 
ServerAdmin [email protected] 

DocumentRoot /var/www 
<Directory /> 
     Options FollowSymLinks 
     AllowOverride ALL 
</Directory> 
<Directory /var/www/> 
     Options Indexes FollowSymLinks MultiViews 
     AllowOverride ALL 
     Order allow,deny 
     allow from all 
</Directory> 
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
<Directory "/usr/lib/cgi-bin"> 
     AllowOverride All 
     Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
     Order allow,deny 
     Allow from all 
</Directory> 

ErrorLog ${APACHE_LOG_DIR}/error.log 

E, infine, /etc/apache2/mods-enabled/userdir.conf assomiglia:

<IfModule mod_userdir.c> 
     UserDir public_html 
     UserDir disabled root 

     <Directory /home/*/public_html> 
       AllowOverride All 
       Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec 
       <Limit GET POST OPTIONS> 
         Order allow,deny 
         Allow from all 
       </Limit> 
       <LimitExcept GET POST OPTIONS> 
         Order deny,allow 
         Deny from all 
       </LimitExcept> 
     </Directory> 
</IfModule> 

Sono stato googling e giocherellare per ore, qualcuno può aiutare per favore?

risposta

14

Per quello che vale, ho avuto un problema molto simile con Ubuntu Server 11.10 e LAMP. Ho dovuto eseguire il comando

sudo a2enmod rewrite 

che ha fatto il trucco per me. Forse è la soluzione per te o per altre persone che arrivano qui.

+0

Questo ha funzionato anche per me .... Utilizzo di laravel con Ubuntu 10.10 con lo stesso problema ... – ftrotter

+0

Questo problema è venuto fuori anche per me su ubu 12.04 LTS, ha funzionato !!, contento di avere qualcosa come StackOverflow! – Mazzy

+0

Sono felice di aiutare :) – jonas

Problemi correlati