Salut à tous,
1- j'ai un prefix de route admin qui du genre : http://localhost/exemple/admin/users/index et je souhaiterai que l'adresse soit accessible ainsi http://admin.localhost/exemple/users/login je pense que c'est au niveau des routes mais je sais pas trop ou configurer!
2 - Aussi, j'ai un e-commerce fait sur Prestashop, que je souhaiterai rendre accessible depuis mon site via le lien suivant http://store.localhost/exemple/

Avez vous des idées svp ou des tutos pour m'orienter... je suis preneur.

Merci d'avance la famille!!

11 réponses


Bonjour,
voila un bon tuto => Routing

Sean78
Auteur

Salut wilose, je l'ai fait ce tuto il ne répond pas à ma question sur les sous domaines.

Sean78
Auteur

Quelqu'un a t-il déja travaillé sur les ss-domaines avec CakePhp svp ?! HELP!

Sean78
Auteur

Bon je vais continuer à fouiller sur google et voir ce qui ce dit (je suis sous mac avec mamp).
Bonne journée

Tu va trouver ton bonheur sur cette page ;)

http://book.cakephp.org/2.0/fr/appendices/new-features-in-cakephp-2-0.html

class SubdomainRoute extends CakeRoute {
    public function match ($params) {
        $subdomain = isset($params'subdomain']) ? $params'subdomain'] : null;
        unset($params'subdomain']);
        $path = parent::match($params);
        if ($subdomain) {
            $path = 'http://' . $subdomain . '.localhost' . $path;
        }
        return $path;
    }
}

echo $this->Html->link(
    'Autre domaine',
     array('subdomain' => 'test', 'controller' => 'posts', 'action' => 'add')
);

Bonjour.
Pour le premier point, je ne vois pas trop l'intérêt ou la nécessité de mettre ton pré-fixage admin sur un sous-domaine, sachant qu'il n'y aura que les admin (voir que toi) qui y aura accès.
Si ce qui te dérange est le fait que dans ton URL il y ait la mention "admin" à la racine du site, il te suffit de mettre dans ton routing quelque chose du genre :

Router::connect('/dashboard/*', array('admin' => true));

Pour le second point, je ne vois pas quel est le rapport entre prestashop a mettre sur un sous-domaine et ton application CakePHP, il te suffit de mettre ton e-commerce Prestashop sur ton sous-domaine et c'est une manipulation qui n'a rien à voir avec CakePHP.

Sean78
Auteur

Merci à tous d'avoir cogiter sur mon problème.
@orion j'ai en effet vu ça sur le CookBook mais je ne sais pas ou le mettre le fichier subdomainRoute.php j'ai essayé dans différents fichiers ça passe pas.
@Lartak11 c'est peut-etre une question débile, je ne sais pas où mettre le dossier prestashop à la racine du serveur ou dans mon appli et ou dans l'appli.
Encore merci les gars!

Il faut que tu extend la class et que tu stocke ici

app/Lib/Routing/Route

Sean78
Auteur

Salut @Orion j'ai suivi tous les détails mais rien à rien!
En ecrivant dans un vue:

<?php echo $this->Html->link(
    'Autre domaine',
     array('subdomain' => 'admin', 'controller' => 'users', 'action' => 'index')
);?>

j'obtiens le lien suivant : http://localhost/cakephp/users/index/subdomain:admin

Je pense que je vais abandonner et faire autre chose.

Merci à tous de votre aide!

Bonsoir.
Tu peux montrer le code de ton fichier SubdomainRoute.php?

Est-ce que tu instancie SubdomainRoute.php

A vérifier mais de tête tu fait comme ceci :

App::uses('Lib', 'Route/SubdomainRoute');