2012-04-23 19 views
5

Sto creando il front controller php. questo è il mio file .htaccess.Come impedire un file dal reindirizzamento .htaccess?

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteRule (.*) controller.php [L] 
</IfModule> 

Questo codice reindirizza tutto l'URL allo controller.php. Devo evitare di reindirizzare index.php allo controller.php. Tutti gli altri URL dovrebbero reindirizzare a controller.php.

+1

consultare: http://stackoverflow.com/questions/7210931/htaccess-redirect-all-but-one-page-from-html-to-php – Janaki

+0

@Dubious: thanx –

+0

siete i benvenuti. continua a vendere e sostenere – Janaki

risposta

5

È possibile utilizzare la seguente sintassi di fare un'eccezione:

RewriteRule name_of_page_to_exclude.php - [L] 

Il trattino (-) è importante. Lo [L] si assicura che se questa regola viene attivata, è l'ultima che verrà elaborata. Così, naturalmente, è necessario posizionarlo vicino alla parte superiore del file .htaccess, prima che la regola nella sua domanda:

RewriteEngine on 
RewriteRule name_of_page_to_exclude.php - [L] 
RewriteRule (.*) controller.php [L] 

Il documentation è a dire quanto segue:

- (trattino) Un trattino indica che non deve essere eseguita alcuna sostituzione (il percorso esistente viene passato intatto).

+0

yahh fantastico dr. Sta funzionando. Grazie mille. –

0

Aggiungere la seguente condizione:

RewriteCond %{REQUEST_FILENAME} !-f 

Questo permetterà a qualsiasi file che in realtà esistono e si assume che sarebbe non rovinare niente altro per gli altri file già esistenti.

+0

Grazie. dr. Ma non è lavoro. –

Problemi correlati