2011-09-11 18 views
5

voglio riscrivere gli URL in modo che quando qualcuno va a:URL mod_rewrite

url.com/directory1/directory2 

vede l'URL nella barra degli indirizzi del browser, ma in realtà il seguente URL sta mostrando il testo

url.com/index.php/directory1/directory2 

Quindi, in pratica , l'URL url.com/directory1/directory2 passa a url.com/index.php/directory1/directory2

Come posso farlo utilizzando .htaccess e/o mod_rewrite? Qual è la regola di riscrittura per questo?

risposta

4

Nei tuoi .htacces file Utilizzare questo:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)/(.*)(\/?)$ /index.php/$1/$2 [NC,QSA,L] 

O nel vostro httpd.conf

<VirtualHost *:80> 
    DocumentRoot "/var/www/" 
    ServerName www.url.com 
    ServerAlias www.url.com 
    <Directory /path/to/www/> 
     RewriteEngine on 
     RewriteCond %{REQUEST_FILENAME} !-f 
     RewriteCond %{REQUEST_FILENAME} !-d 
     RewriteRule ^(.*)/(.*)(\/?)$ /index.php/$1/$2 [NC,QSA,L] 
    </Directory> 
</VirtualHost> 

Se si utilizza PHP:

$_SERVER['REQUEST_URI'] avrà /asd/asd

+0

Mi dà accesso negato amico –