[Nuke] valeurs CHMOD ?

Bonjour tlm.

Je voudrais savoir quelle sont les valeurs CHMOD des différents dossiers de Nuke ?

site_nuke72
  +- admin
  +- blocks
  +- db
  +- images
  +- includes
  +- language
  +- modules
  +- themes

La valeur CHMOD actuelle de tous les dossiers est 745 (rwxr--r-x).

Après avoir upé le site sur le serveur (qui fonctionnais sans pb en local) je conste que celui-ci ne fonctionne plus.
Voici le message d'err :

Warning: Invalid argument supplied for foreach() in /home/sites/site25/users/sida/web/mainfile.php on line 47

Warning: Invalid argument supplied for foreach() in /home/sites/site25/users/sida/web/mainfile.php on line 61
You can't access this file directly...


D'avance merci :)

~°sidarus°~

8 réponses

  1. Contributeur
    ping ? ... pas de pong :(

    Bon je reformule ma question autrement...

    Est-ce que la valeur CHMOD de tous les dossiers=777 et tous les fichiers=666 ???

    ~°sidarus°~
    1. Je pense pas non, 777 c'est pas très conseillé comme chmod, ca veut dire que tout le monde peut les modifier. Essaye de mettre 644 a ceux qui ont une erreur pour voir, ainsi que le chemin pour aller jusqu'a eux
      1. Je ne pense pas que ton problème vienne des permissions d'accès.

        Qu'y a-t-il en lignes 47 et 61 de ton fichier mainfile.php ?
        1. Contributeur
          Merci à vous 2 de me venir en aide.

          Je reprécise que Nuke 7.2 Fr fonctionne parfaitement en local.
          J'ai du modifier le fichier php.ini comme expliqué ici :
          https://forums.commentcamarche.net/forum/affich-731237-php-nuke

          ... mais pas sur l'hébergeur :p

          Voici les lignes 47+61 et suivantes du fichier mainfile.php responsables du pb

          line #47 :
           foreach ($_GET as $secvalue) {
              if ((eregi("<[^>]*script*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*object*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*iframe*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*applet*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*meta*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*style*\"?[^>]*>", $secvalue)) ||
          	(eregi("<[^>]*form*\"?[^>]*>", $secvalue)) ||
          	(eregi("\([^>]*\"?[^)]*\)", $secvalue)) ||
          	(eregi("\"", $secvalue))) {
             die ("<center><img src=images/logo.gif><br><br><b>The html tags you attempted to use are not allowed</b><br><br>[ <a href=\"javascript:history.go(-1)\"><b>Go Back</b></a> ]");
              }
          }


          line #61 :
          foreach ($_POST as $secvalue) {
              if ((eregi("<[^>]script*\"?[^>]*>", $secvalue)) ||	(eregi("<[^>]style*\"?[^>]*>", $secvalue))) {
                  die ("<center><img src=images/logo.gif><br><br><b>The html tags you attempted to use are not allowed</b><br><br>[ <a href=\"javascript:history.go(-1)\"><b>Go Back</b></a> ]");
              }
          }


          ~°sidarus°~
        2. Les deux variables _GET et _POST ne sont pas définies sur ton serveur de production
          essaie $HTTP_GET_VARS à la place de $_GET et $HTTP_POST_VARS à la place de $_POST

          La directive register_globals est active sur ton serveur de production. Alors ces variables seront aussi rendues directement accessible dans le contexte d'exécution global. C'est à dire séparément des tableaux $_GET et $HTTP_GET_VARS. Pour plus d'informations sur la sécurité de cette configuration, voyez le chapitre Utiliser la directive Register Globals. Ces variables globales individuelles ne sont pas des globales
          1. Contributeur
            Bingo ! Mille fois merci zouzou46... en plein dans le mille :D

            Je me suis pas encore amusé à remplacer toutes les occurences de $_GET et $_POST par leur correspondantes, mais bon je laisse Ultraedit s'en charger (Remplacer "X" par "Y" dans tous les fichiers dans "x") :P

            Encore MERCI à toi.
            PS: ... et à ceux qui me sont venu en aide

            Locked :P

            ~°sidarus°~
        3. Contributeur
          Zut suis aller un peu vite...
          T'as combine zouzou46 n'a résolu que la moitié du pb.

          1. Je n'ai plus de Warning: Invalid argument supplied for foreach() in fichier.php on line xxx :)
          2. parcontre le plus grave You can't access this file directly... reste :(

          Pourtant j'ai suivi l'install pas-à-pas. Alors honnetement la je vois pas se que j'ai fais de faux et pk j'ai pas le Access o_Ô

          Any idea ?

          ~°sidarus°~
          1. en ligne #61, tu as maintenant : foreach ($HTTP_POST_VARS as $secvalue) ?

            Si oui, c'est incompréhensible.
            Juste au dessus (ligne #60) , mets ces 3 lignes :
            echo "<br>HTTP_POST_VARS : " ;
            print_r($HTTP_POST_VARS) ;
            exit ;
            et dis-moi ce que tu vois stp

            Si non, dis-moi ce que tu as en ligne #61