Empecher l'acces directe aux fichiers js/css/etc...
- Accueil
- Forum
- Programmation
- PHP
- Empecher l'acces directe aux fichiers js/css/etc...

TXSYN Le 25 octobre 2018 à 12:44 (Édité le 25 janvier 2019 à 17:54)
En codant mon site je me suis rapidement aperçu que lorsque l'on écrit L’URL d'un fichier que ce soit d'une image, du css, du js de mon site l’accès y est autorisé. La publication officielle de mon site approchant j'aimerai résoudre ce "problème".
C'est pour cela que je vous demande s'il existe un moyen de bloquer l’accès direct à ces fichiers tout en rendant leurs applications/affichages possibles.
Je vous remercie par avance,
P.S: je n'ai pas trouvé de sous-catégorie vraiment adapté et pour cela je m'en excuse. 😅

PrimFX Le 25 octobre 2018 à 18:27 (Édité le 1 janvier 1970 à 01:00)
Eh bien, j'ai une réponse, mais pas sûr que tu l'apprécies 😅
En réalité, le JS et le CSS sont des langages dits « client-side » (côté client), contrairement au PHP ou autres technologies « back-end » (côté serveur). La particularité de ces scripts client-side est qu'ils sont toujours accessible depuis le client. Ainsi, n'importe qui qui a une console à sa disposition pourra aller jeter un coup d’œil à ton code JS ou CSS par exemple... Selon ton serveur, tu pourras peut-être empêcher d'afficher le contenu d'un dossier avec certaines règles (comme le "Options -Indexes" offert par Apache par exemple), mais empêcher l'accès à un script spécifique reste impossible.
A la limite, tu peux rendre ton code moins lisible en le « minifiant » (pleins d'outils sont dispos online pour ça, en voici un parmi tant d'autres). Mais à nouveau, ça n'empêchera personne ni d'y accéder ni de le « unminify ».
Si tu veux vraiment protéger certains scripts, le seul moyen reste de les recréer - si c'est faisable bien sûr - dans un langage côté serveur, puis de les appeler depuis ton JS de façon asynchrone : à ce moment-là, personne n'aura accès à tout ce qui est côté serveur 😃
En espérant avoir pu répondre à ta question 😉
PS : Pour la sous-catégorie, pas de soucis, on va dire que ton problème se rapproche de la config serveur et que le PHP est un langage côté serveur, c'est pas totalement incohérent x)

TXSYN Le 29 octobre 2018 à 19:52 (Édité le 1 janvier 1970 à 01:00)
Je mets le topic en résolu !