Rechercher : dans
Par :

Compréhension de code en PHP (htaccess)

Dernière réponse le 4 jun 2009 à 14:49:36 VieTgOOx, le 18 mai 2009 à 11:51:35 
 Signaler ce message aux modérateurs

Bonjour,

Voilà je suis actuellement en stage de dev et je reprend un site web que je n'ai pas créer. J'essaye d'en comprendre les codes mais pas facile pour un débutant, surtout avec le site d'un professionnel :\ ...

J'ai des soucis de compréhension notamment pour ce code dans une feuille htaccess :

php_flag register_globals off
<IfModule mod_php5.c>
php_value default_charset 'UTF-8'
</IfModule>

La 1ere ligne ok, c'est pour remettre la valeur register_globals en off, même si je ne comprend pas bien l'avantage de cette variable en off...apparemment ce serait par soucis de sécurité mais je n'en sais pas plus.

Pour ce qui est de la suite IfModule ce serais une "installation" de module mais je ne suis pas certain du tout de ce que j'avance et je ne vois d'ailleurs même pas comment c'est censé fonctionner >_< !

Plz, si vous pouvez m'aider ce serait le bonheur car là je suis bien en galère...

Merci d'avance
Bien cordialement,
VieTgOOx.

Configuration: Windows XP
Firefox 3.0.10

Meilleures réponses pour « Compréhension de code en PHP (htaccess) » dans :
[Webmaster] Afficher facilement le code php/xhtml de vos pages Voir Si vous voulez proposer a vos visiteurs de voir la source de vos fichiers (PHP ou HTML), il y a plusieurs solutions. En php Afficher le code php Afficher le code html En html Informations Voir aussi En php Afficher le code php La...
On peut cacher le code source d'une page HTML VoirMythe: On peut cacher le code source d'une page HTML. Réalité: FAUX. Explications: Pour pouvoir afficher une page web (HTML), le navigateur doit - à un moment où un autre - avoir le code HTML en clair. Il y a donc toujours moyen de le...
[Site web] Vérifier, optimiser et nettoyer son code HTML VoirLes logiciels WYSIWYG de création de pages web produisent parfois du contenu HTML rempli de balises HTML inutiles, voire incompatibles avec les recommandations du W3C. Les outils proposés ci-dessous permettent de vérifier la validité du code HTML...
Implantation du code Php VoirL'interprétation du code par le serveur Un script PHP est un simple fichier texte contenant des instructions écrites à l'aide de caractères ASCII 7 bits (des caractères non accentués) incluses dans un code HTML à l'aide de balises spéciales et...
Apache - Les fichiers .htaccess VoirLes fichiers .htaccess sont des fichiers de configuration d'Apache, permettant de définir des règles dans un répertoire et dans tous ses sous-répertoires (qui n'ont pas de tel fichier à l'intérieur). On peut les utiliser pour protéger un répertoire...
Introduction à PHP VoirQu'est-ce que PHP? PHP est un langage interprété (un langage de script) exécuté du côté serveur (comme les scripts CGI, ASP, ...) et non du côté client (un script écrit en Javascript ou une applet Java s'exécute sur votre ordinateur...). La...

1

empty, le 18 mai 2009 à 12:10:05

J'ai fais des recherches dans le manuel PHP pour ta première ligne et ai remarqué ce message d'avertissement :
Avertissement
Cette fonctionnalité est OBSOLETE depuis PHP 5.3.0 et a été SUPPRIMEE depuis PHP 6.0.0. Nous vous encourageons vivement à ne plus l'utiliser.


If = Si --> une condition, donc on dirait que ça veut dire, Si le module "mod_php5.c" est présent, alors mettre le charset UTF-8 par défaut

C'est ce que ça a l'air de dire en gros, donc le charset c'est pour définir le type de codage de caractères utilisé, ici c'est le codage approprié pour afficher les caractères Français... Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty

2

VieTgOOx, le 18 mai 2009 à 12:18:16

Merci de ta réponse, surtout aussi rapidement :)

Mais qu'est ce que ça fait dans une feuille htaccess?? o_O ! J'ai du mal à comprendre.

Pour la 1ère ligne, en effet c'est ce que je commençais à voir, apparemment ce n'est plus utilisé...mais j'ai remarqué déjà plusieurs codes dépassés dans ce site...et à la limite je comprend tout à fait ce que cette ligne fait dans une feuille htaccess puisque qu'il n'y a que dans cette feuille que l'on peu modifier cette variable je crois...

Enfin bon c'est déjà plus claire grâce à toi, merci bien.

Cordialement,
VieTgOOx.

Répondre à VieTgOOx

3

empty, le 18 mai 2009 à 15:11:14

Le reste du code est dans la feuille HTACCESS car je ne pense pas qu'on puisse vérifier la présence d'un module en PHP... Donc c'est sûrement aussi dû à une obligation :-) Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty

4

VieTgOOx, le 19 mai 2009 à 07:50:52

Arf, pourrais-tu être plus claire car je n'ai pas bien compris ce que tu essayais de me dire là ? :s

Répondre à VieTgOOx

5

empty, le 19 mai 2009 à 09:13:56
  • +1

Tu as dis que tu comprenais la 1ère ligne et que tu voyais pourquoi elle était obligatoire dans le htaccess mais pas le reste du code et moi je t'ai dis qu'il fallait faire une vérification vis-à-vis d'un module PHP et on ne sait sûrement le faire que via la feuille htaccess donc c'est aussi obligatoire...

Dis moi si tu as compris, je sais pas comment mieux expliquer ^^ mais j'essayerai si il le faut ;-) Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty

6

VieTgOOx, le 19 mai 2009 à 09:26:29

Si oui ok j'ai compris ^^!

Par contre ce soit disant "module" il doit bien sortie de quelque part non? Enfin j'ai jamais utilisé de module donc je ne sais pas bien comment ils sont censé fonctionner, installé, sous quel forme ils sont enfin bref...

Comment je peux retrouver ce module et savoir à quoi il sert?

Merci de ton aide en tout cas empty, et de ta rapidité très apprécié :)

Répondre à VieTgOOx

7

empty, le 19 mai 2009 à 11:51:59
  • +1

As-tu déjà utilisé WampServer ? Tu peux y activer des modules et les desactiver à quoi ils servent... En gros à permettre certains controles, comme la réécriture url, le fait de pouvoir ouvrir une balise php de cette manière <? et non plus <?php (ce qui n'est pas vraiment super nécessaire), si tu es chez un hébergeur tu peux pas accèder aux modules juste connaitre leurs état, maintenant si tu es sur le serveur de ton entreprise ou chez quelqu'un que tu connais tu peux demander à ce qu'on active les modules dont tu as besoin... Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty

8

VieTgOOx, le 19 mai 2009 à 12:59:09

OK ben la le truc c'est que c'est un hébergeur totalement externe à l'entreprise...c'est chez Planet Hoster je crois...mais ok j'ai compris à quoi servait un module.

Mais si je suis ton raisonnement, ce Ifmodule ne peux servir qu'à connaitre " l'état " du module, donc s'il est activé ou non c'est ça? Mais alors dans le cas ou il n'est pas activé il se passe quoi? Y'a pas de else donc aucune instruction si le module n'est pas activé ou s'il n'existe pas...

Merci encore de ton aide et du temps que tu prend pour me répondre :)

Répondre à VieTgOOx

9

Dr Zoidberg, le 19 mai 2009 à 13:18:48
  • +1

Salut,

La condition dans le htaccess permet simplement de ne pas configurer la variable php_value si le module PHP n'est pas installé sur le serveur WEB (apache), variable qui est propre à ce module. Cela permet d'éviter une erreur si le module PHP n'est pas disponible.

Pour register_globals off , cela désactive le fait que les variables $_GET, $_POST ... soient automatiquement converties en variables globales, cela est dangereux. C'est pour ca que la variable est placée à off par défaut en PHP 5 et n'existe plus en PHP 6 (elle sera donc forcement à off). C'est pour ca qu'on développer toujours avec register_globals off à l'heure actuelle, par sécurité et pour être compatible avec PHP6.

Répondre à Dr Zoidberg

10

empty, le 19 mai 2009 à 14:02:38

Voilà il a répondu pour toi :-) Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty

11

VieTgOOx, le 20 mai 2009 à 14:13:58

D'accord :) merci, bien pour votre aide!!

Grâce à vous cela m'a permis de mieux comprendre le code et de pouvoir le compléter en partie ^^!

Celui que j'ai mis plus haut est devenu:

php_flag register_globals off
php_flag short_open_tag on
<IfModule mod_php5.c>
php_value default_charset 'UTF-8'
</IfModule>
Options MultiViews

Encore merci et à bientôt pour de nouvelles aventures =D !

Spéciale dédicace (et remerciement surtout XD) à empty qui m'a suivis tout le long de mon problème :)

Répondre à VieTgOOx

12

 empty, le 4 jun 2009 à 14:49:36

Merci, aucun problème :-) tu veux bien mettre ton article en tant que résolu et voter "+" pour les articles qui t'ont aidé ? Webmaster - Référenceur - Programmeur - Graphiste

Répondre à empty