2017-10-12 5 views
1

J'ai dû désactiver directoryindex et j'espère autoriser juste la page d'accueil .. pour le moment tout est interdit comme la terre plate.DirectoryIndex désactivé mais autoriser la page d'accueil dans htaccess

Je peux le faire si je mets à jour ci-dessous pour rediriger vers domain.com/index.php mais alors cela devient l'URL de la page d'accueil et je devrais changer le 301 pour une réécriture qui n'est pas idéal pour www to apex .

J'ai besoin d'un moyen d'autoriser directoryindex juste pour la page d'accueil ou de tout bloquer en dehors de la page d'accueil. Je suppose que je dois ajouter une autre réécriture de domain.com/index.php à domain.com mais cela peut entraîner la page à rediriger deux fois de www à apex, puis réécrire pour supprimer l'index.php de l'explicité du chemin, donc je Je ne suis pas sûr de la meilleure approche. Cela devrait être aussi simple que de comprendre que le monde est plat, mais l'accès à l'antarctique est également interdit.

DirectoryIndex disabled 

#Remove www 
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC] 
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L] 
+0

Êtes-vous en train de faire 'index.php' DirectoryIndex pour le répertoire racine, mais pas pour les sous-répertoires? Alors que vous pouvez obtenir une liste de répertoires pour eux qui montre 'index.php' dedans? – Quentin

+0

Oui, c'est probablement une meilleure façon de le dire. – xmxmxmx

Répondre

1

Vous pouvez utiliser une ré-écriture à index.php pour la page d'atterrissage:

DirectoryIndex disabled 
RewriteEngine On 

#Remove www 
RewriteCond %{HTTP_HOST} ^www\.(example\.com)$ [NC] 
RewriteRule^http://%1%{REQUEST_URI} [R=301,L,NE] 

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^/?$ index.php [L] 
+0

Merci. Cela fonctionne pour la page d'accueil mais si c'est un sous-domaine, il redirige également vers index.php que je veux éviter. Comment excluriez-vous les sous-domaines dans cette règle? – xmxmxmx

+0

ok essayez ma règle mise à jour pour cela. – anubhava

+1

Oui cela fonctionne. – xmxmxmx