Jump to content

Redirection vers authentification impossible


Recommended Posts

Bonjour,

 

j'ai un petit soucis au niveau du lien qui amène vers l'authentification ou l'inscription.

 

En effet, je fais de l'intégration sur un site prestashop. Pour pouvoir travailler correctement sans déranger pour autant les utilisateurs du site, je travaille sur une autre adresse web avec la copie du site. Le problème, c'est que lorsque je dois modifier le css du site pour le formulaire d'inscription, j'ai le droit à une page blanche. Je pensai peut-être à un problème de chemin ( j'ai dû modifié le htaccess avec l'adresse de la version dev du site  pour pouvoir acceder à certaines pages ) mais là, je n'ai aucune idée du pourquoi je n'ai pas accès à la page d'inscription/authentification.

 

Si vous avez une idée, je suis preneur,

 

Cordialement,

 

VinceMAP

Link to comment
Share on other sites

Bonjour,

Pour moi il n'y a pas besoin de modifier un htaccess pour créer un site de dév à partir d'une version en production.

As-tu suivis le guide pour déplacer un prestashop ? Tu dois avoir une erreur de redirection.

Sinon as-tu regardé les logs d'apache ? Et activé le mode debug de prestashop ?

 

Moving PrestaShop to a New Domain (tout en bas pour le guide): http://doc.prestashop.com/display/PS16/System+Administrator+Guide

Edited by Marvin Lamart (see edit history)
Link to comment
Share on other sites

Bonjour,

 

Toutes les étapes ont été effectuées avant que l'ont me donne le site ( sql , déplacement, etc ... ) . Les logs apaches et le mode degub de prestashop ne donnent rien .. Je pense aussi à un problème de redirection mais je ne vois pas d'où cela vient. J'ai essayer d'activer les erreurs via le htaccess aussi sans succès ...

EDIT : De plus j'ai une code 200 donc rien d'anormal ........

	php_flag display_startup_errors on
	php_flag display_errors on
	php_flag html_errors on
	php_flag log_errors on
	php_flag ignore_repeated_errors off
	php_flag ignore_repeated_source off
	php_flag report_memleaks on
	php_flag track_errors on
	php_value docref_root 0
	php_value docref_ext 0
	php_value error_log /var/projects/machineapub/application/v1-dev/www/PHP_errors.log
	php_value error_reporting -1
	php_value log_errors_max_len 0
Edited by MAPVince (see edit history)
Link to comment
Share on other sites

Il semblerait que le site trouve le bon lien puisqu'il l'affiche dans la barre URL , mais il ne parvient pas à afficher la page ... Voici deux liens :

 

http://www.machineapub.com/authentification?back=my-account <--- Site en prod

 

http://www-dev.machineapub.com/authentification?back=my-account <---- Site en dev

 

Celui en prod marche fort heureusement mais pas celui en dev .... Pourtant même lorsque je tape http://www-dev.machineapub.com/mon-compte ( url modifiée avec URL & SEO ), il modifie l'URL en http://www-dev.machineapub.com/authentification?back=my-account . Ce qui veut dire ( je pense ) qu'il trouve bien l'adresse url ...

Link to comment
Share on other sites

J'ai fouillé un peu et ai mis des var_dump un peu partout puis sur cette fonction d'un controller du site :

public function run()
    {
        $this->init();
        if ($this->checkAccess())
        {
            // setMedia MUST be called before postProcess
            if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className)))
                $this->setMedia();

            // postProcess handles ajaxProcess
            $this->postProcess();

            if (!empty($this->redirect_after))
                $this->redirect();

            if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className)))
                $this->initHeader();

            if ($this->viewAccess())
                $this->initContent();
            else
                $this->errors[] = Tools::displayError('Access denied.');

            if (!$this->content_only && ($this->display_footer || (isset($this->className) && $this->className)))
                $this->initFooter();

            // default behavior for ajax process is to use $_POST[action] or $_GET[action]
            // then using displayAjax[action]
            if ($this->ajax)
            {
                $action = Tools::getValue('action');
                if (!empty($action) && method_exists($this, 'displayAjax'.Tools::toCamelCase($action, true)))
                    $this->{'displayAjax'.$action}();
                elseif (method_exists($this, 'displayAjax'))
                    $this->displayAjax();
            }
            else
                $this->display();
        }
        else
        {
            $this->initCursedPage();
            $this->smartyOutputContent($this->layout);
        }
    }


J'ai tenté un peut de var_dump partout jusqu'au moment où il ne s'affichait plus et il s'avère que c'est juste après cette ligne

 

if ($this->viewAccess())
$this->initContent();
else
$this->errors[] = Tools::displayError('Access denied.');


J'ai tenté de supprimer cette ligne et par magie quelque chose s'est affiché ! Ce n'est pas la page demandée et il y a plein de truc qui manquent mais déjà, le footer ainsi que le header est apparu ... Je ne sais vraiment pas si ça a un rapport quelconque ou non mais le fait est que ça montre déjà qu'on avance un peu .

 

Si par chez vous vous savez ne serais-ce qu'un minimum  d'où pourrait provenir le problème je suis tout ouïe...

Link to comment
Share on other sites

Alors comme ça avec cette fonction je ne sais pas trop. Par contre ça me fait penser que j'ai pas parlé des permissions, mais j'ai souvent des problèmes de permissions après le déplacement d'un Prestashop, peut-être que tu as certains dossier qui ne sont pas configurés correctement

Link to comment
Share on other sites

Ah j'ai une autre piste sinon, je viens de regarder ton site, et sur la page d'accueil il te manque 2 variables.

Notice: Undefined index: config_nom in /var/projects/machineapub/application/v1-dev/www/classes/controller/FrontController.php on line 139
Notice: Undefined index: config_slogan in /var/projects/machineapub/application/v1-dev/www/classes/controller/FrontController.php on line 140

Et elles sont manquantes dans le FrontController à des lignes où normalement ya rien.

Donc ya de grande chance qu'ils aient oublié de te donner un ou deux fichiers, parce que ces 2 variables ne sont pas dans prestashop de base, et ya de grande chance que ce soient elles qui bloquent le site.

Link to comment
Share on other sites

Bonjour,

 

Merci de vos réponses, en effet, je connais ces erreurs, mais je ne pense pas que mon soucis vient de là car c'estce qui correspond à " Mon Entreprise " & " Slogan de mon entreprise " ( que l'ont doit remplir sur la page d'accueil ( les input )). J'ai essayé de généré à nouveau mon robots.txt ainsi que mon htaccess. Ils sont tous neufs maintenant, du coup mon problème de maintenant c'est que je n'ai carrément plus accès aux pages... Il me semble que cela le fait pour toutes les pages SEO & URL ... Impossible d'accerder à ces pages et je ne comprend pas pourquoi .... ( je ne sais même pas si mon problème est reglé en plus de ça vu que je ne peut pas voir la page ) apparemment, il s'avère que le serveur a été réinitialisé pendant le chargement de la page ( erreur de base quoi ^^ ) .

Link to comment
Share on other sites

Houra !! Problème réglé, en revanche, la cause de ce problème est totalement illogique. Je m'explique : 

J'ai voulu afficher le nombre d'articles par catégorie. Pour ceci j'ai été amené à changer le php du module blockcategories ( blockcategories.php ) :

	public function getTree($resultParents, $resultIds, $maxDepth, $id_category = null, $currentDepth = 0)
	{
		if (is_null($id_category))
			$id_category = $this->context->shop->getCategory();

		/*$category = new CategoryCore($id_category);*/

		$children = array();
		if (isset($resultParents[$id_category]) && count($resultParents[$id_category]) && ($maxDepth == 0 || $currentDepth < $maxDepth))
			foreach ($resultParents[$id_category] as $subcat)
				$children[] = $this->getTree($resultParents, $resultIds, $maxDepth, $subcat['id_category'], $currentDepth + 1);
		if (!isset($resultIds[$id_category]))
			return false;
		$return = array('id' => $id_category, 'link' => $this->context->link->getCategoryLink($id_category, $resultIds[$id_category]['link_rewrite']),
					 'name' => $resultIds[$id_category]['name'], 'desc'=> $resultIds[$id_category]['description'],
					 'children' => $children/*, 'products' => $category->getProducts($this->context->customer->id_lang, 1, 1000000, null, null, true)*/);
		return $return;
	}

Les deux lignes commentées ont été rajoutées pour permettre l'affichage du nombre d'articles pour chaque catégories, et , c'est justement ces deux lignes là qui posaient problème... Allez savoir pourquoi ...

 

En tout cas problème résolut.

 

Merci d'avoir pris le temps de m'aider même si le problème était presque introuvable sans debug par ci par là ...

 

Bonne continuation à toi et si tu as une réponse sur le pourquoi du comment je suis curieux de savoir en quoi le module catégories bloquerait-il les pages SEO ....

 

Cordialement,

 

MAPVince

Link to comment
Share on other sites

Ah cool, pas de soucis :)
Alors pour les lignes commentées, je pense que ça vient du:

$category = new CategoryCore($id_category);

Tu as instancié la classe CategoryCore, en fait il faut enlever le Core du nom de la classe pour l'instancier, du coup ça aurait donné:

$category = new Category($id_category);

Sinon sans passer par la classe category la méthode getProduct de la classe Product elle est static, donc tu peux y accéder directement comme ça:

$products = Product::getProducts($id_lang, 0, 0, 'position', $id_category);
public static function getProducts($id_lang, $start, $limit, $order_by, $order_way, $id_category = false,
        $only_active = false, Context $context = null)
  • Like 1
Link to comment
Share on other sites

Ah bah merci du coup !! Au final tu auras un autre de mes problèmes haha ! J'ai enlevé le "Core" du coup, je vais pouvoir continuer à travailler sereinement, ...jusqu'au prochain problème haha.

 

Merci de ton aide précieuse, j'allais encore rester bloqué un bon moment pour ré-afficher les nombres.

 

Cordialement,

 

MAPVince

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...