Redirection site web principale vers sous dossier à la racine

Bonjour,

J'ai appris récemment que pour des raisons de sécurité mon site web principale ne devait pas pointer sur le dossier racine (`www`) de mon hébergement.
En effet il a suffit de taper `/assets` pour accéder au dossiers à l'intérieur.

J'ai donc fait pointer mon nom de domaine principale vers index.php dans un dossier `www/main`.

Cela fonctionne très bien mais quand je fais /assets j'ai toujours accès au dossier à l'intérieur. La différence ne se voit pas mais plutôt que d'être sur` www/assets` je suis sur `www/main/assets`.

Est-ce que cela est suffisant ?

Comment est-ce que je peux faire pour que la personne qui tape `/assets ` ne tombe pas sur mon arborescence ?

Merci de votre aide,
S2LF

> J'ai appris récemment que pour des raisons de sécurité mon site web principale ne devait pas pointer sur le dossier racine (www)

heu non, erreur d"interprétation

> En effet il a suffit de taper /assets pour accéder au dossiers à l'intérieur.

il suffit d'ajouter ton ton .htaccess:
```text
Options -Indexes
```

tu t'es compliqué pour rien au risque d'une organisation plus difficile à comprendre et à maintenir

Effectivement j'aurais peut être du poser la question avant de faire tout ça.
Heureusement en 5 minute j'étais revenus en arrière.

Rajouté `Option -Indexes` sur le .htaccess a bien résolu le problème et me renvoie un 403 :
`Forbidden
You don't have permission to access /assets/ on this server.`

Mais cela a eu un impact ailleurs:
Je me suis crée un espace /admin dans lequel il y a un .htaccess avec un login et un mot de pass hashé.
Du coup quand je vais sur monnomdedomaine/admin il me demande bien le mot de passe mais reste sur la page `Forbidden`.

Peut-être je peux créer un exception pour lui ?
Ou alors je demande un mot de passe pour tous les /options ?

Je suis pas très calé en .htaccess

par défaut pour le listage d'un répertoire, il est cherché de lire un fichier (html|php|htm je sais pas): option par défaut `+Indexes`

indiquer `-Indexes ` force à avoir un de ces fichiers, selon l'ordre défaut:
`DirectoryIndex index.html index.php`
sinon, 403 => pas de listage de répertoire non contrôlé par un index

tu peux ajouter `DirectoryIndex admin.php index.html index.php ` par exemple (`admin.php` a la priorité si présent)

> reste sur la page Forbidden.

tu n'as pas d'index?

Oui par ordre de priorité il va chercher index.htm/.html/.php

Ok j'ai compris.
Avant je tapais /admin et après mot de passe j'accédais à une arborescence et je cliquais sur le dossier que je recherchais.
J'ai juste eu besoin de mettre ce dossier directement sur /admin, comme il dispose d'un index.php,
après mot de passe il me renvois un 200 et affiche index.php.

Et maintenant on ne peux plus accéder à l'arborescence.

Grâce à vous j'en apprends un peu plus à chaque fois sur le .htaccess

Merci de votre aide @kyodev

Sylvain