Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/05/2020, à 18:03

elcastor

Multisites, certificats SSL + ports de redirection [RESOLU]

Bonjour à tous,

avec un ami, nous déployons un site marchand sur un serveur Ubuntu chez OVH qui possède déjà un site en production.
L'idée est de faire un quasi clone du premier site, pour ce qui concerne le moteur (développé sous Symfony...)

Bref, jusqu'à présent tout fonctionne MAIS on bute sur le paiement en ligne.

Le site A répond sur les ports 80 / 443.
Le nouveau site, le site B, répond actuellement sur le port 8080. On voudrait faire répondre le https sur le port 8443.

Chez notre Régistar (Gandi), nous avons fait la redirection web :

http://adresse.fr    ->  Caché  ->      http://IP.IP.IP.IP:8080   
et    
http://*.adresse.fr       ->  Caché -> http://IP.IP.IP.IP:8080

Jusque là ça va. Maintenant, quand je veux créer une redirection https, Gandi ne me propose PAS de cacher l'url, ce qui fait que je me retrouve avec une URL de type "https://MONADRESSEIP:8443, ce qui est moche mais bon...
Par contre, sur OVH, on a testé d'installer le certficat SSL fourni par Let's Encrypt, mais nous ne pouvons PAS l'installer, car il est dit clairement :

Lets encrypt a écrit :

http://IP:8080/.well-known/acme-challenge/r5tytitAaa4DldQFFGw4WKc5q--UPEscvYD4iwzn57M:
   Invalid port in redirect target. Only ports 80 and 443 are
   supported, not 8080

Ce qui est ballot, car on est coincé. J'ai l'intuition qu'on pourrait revoir notre architecture pour que tout passe par les mêmes ports... Auriez vous un conseil à me donner ?

Dernière modification par elcastor (Le 22/05/2020, à 10:01)

Hors ligne

#2 Le 13/05/2020, à 23:15

janvi

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

Un reverse proxy ? Il recoit les 80 / 443 et dispatch ensuite vers les deux sites ?

J'ai un nom de domaine, j'heberge chez moi plusieurs site pour mon usage perso avec Docker.
Tout arrive en 80 / 443 sur un container avec un proxy nginx, qui redispatch ensuite vers les autres container "web".
Je peux pas trop aider pour l'installation / conf nginx standard (hors docker), juste extraire les règle de routage (qu'il génère seul)

possible aussi avec Apache me semble-t-il...

Dernière modification par janvi (Le 13/05/2020, à 23:18)

Hors ligne

#3 Le 14/05/2020, à 01:05

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

fais comme tout le monde : utilise des hôtes virtuels pour afficher tel ou tel site sur les ports standards, en fonction du nom de domaine appelé...
https://doc.ubuntu-fr.org/tutoriel/lamp … de_travail

tu utilises quel serveur http ?

Hors ligne

#4 Le 14/05/2020, à 07:49

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

Hello,
@janvi, oui c'est sans doute une bonne idée, je vais regarder dans cette direction. Là il y a de bonne infos semble-t-il. Ce qui est bizarre, c'est que ça n'est pas la première fois que j'héberge plusieurs site sur le même serveur, et que je n'ai jamais eu besoin de proxy. Créer des hôtes virtuels suffisait...
On est sur Apache. Voici la config du site B :

<VirtualHost *:8080 *:8443>
        ServerAdmin ici@chezmoi.fr
        ServerName siteb.fr
        DocumentRoot /var/www/siteb.fr/public
        DirectoryIndex /index.php

        <Directory /var/www/siteb.fr/public>
                AllowOverride None
                Order Allow,Deny
                Allow from All

                <IfModule mod_rewrite.c>
                        Options -MultiViews
                        RewriteEngine On

                        RewriteCond %{REQUEST_FILENAME} !-f
                        RewriteRule ^(.*)$ index.php [QSA,L]
                </IfModule>
        </Directory>

        # (Optional) Disable the RewriteEngine for the bundles asset directories
        <Directory /var/www/siteb.fr/public/bundles>
                <IfModule mod_rewrite.c>
                        RewriteEngine Off
                </IfModule>
        </Directory>

        ErrorLog /var/log/apache2/siteb.fr_error.log
        CustomLog /var/log/apache2/siteb.fr_access.log combined
</VirtualHost>

J'ajoute qu'au début, on avait tout laissé sur le 80, et seul le site A répondait. Une requête sur le site B renvoyait vers le site A....

Hors ligne

#5 Le 14/05/2020, à 08:02

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

elcastor a écrit :

J'ajoute qu'au début, on avait tout laissé sur le 80, et seul le site A répondait. Une requête sur le site B renvoyait vers le site A....

c'est clairement possible, oublie le reverse proxy qui va te poser des problèmes supplémentaires (SSL).
poste tes configs complètes (les 2 vhosts) avec les ports standards.

Hors ligne

#6 Le 14/05/2020, à 10:20

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

Alors pour le site B, il est ci-dessus, j'ai remis le port 80 pour tester

<VirtualHost *:80 *:8443>

, relancé Apache et supprimé cette redirection au niveau du DNS : http://.siteb.fr    => Caché => http://MONADRESSIP:8080
J'attends un peu la propagation pour voir ce que ça donne.
Pour le site A :

<VirtualHost *:80>
        ServerAdmin webmaster@siteA.com
        ServerName siteA.com
        DocumentRoot /var/www/siteA.com/public
        DirectoryIndex /index.php

        <Directory /var/www/siteA.com/public>
                AllowOverride None
                Order Allow,Deny
                Allow from All

                <IfModule mod_rewrite.c>
                        Options -MultiViews
                        RewriteEngine On
                        RewriteCond %{REQUEST_FILENAME} !-f
                        RewriteRule ^(.*)$ index.php [QSA,L]
                </IfModule>
        </Directory>

        # (Optional) Disable the RewriteEngine for the resources asset directories
        <Directory /var/www/siteA.com/public/resources>
                <IfModule mod_rewrite.c>
                        RewriteEngine Off
                </IfModule>
        </Directory>

        ErrorLog /var/log/apache2/siteA.com_error.log
        CustomLog /var/log/apache2/siteA.com_access.log combined
</VirtualHost>

Hors ligne

#7 Le 14/05/2020, à 14:45

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

si tu veux le https, c'est aussi *:443.

tu peux effectivement les chaîner : <VirtualHost *:80 *:443>
mais je pense que mieux vaut créer deux virtualhost pour chaque domaine, avec une simple redirection vers https pour le 80, et les autres directives et certificats sur le 443.

Hors ligne

#8 Le 15/05/2020, à 19:49

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

bonjour,
"pour" voir, j'ai remis le site B en :80 :443 dans son virtual host, et supprimé la redirection,, et rajouté une entrée A dans mes enregistrements DNS. Panique à bord ! Les deux domaines A et B renvoyaient le site B (en construction). Du coup j'ai remis comme avant, en essayant d'y voir plus clair. Je ne comprends pas pourquoi, en ayant deux virtual host, Apache ne fait pas la différence entre les deux sites.

Entre temps, j'ai eu mon collègue qui me dit qu'il y a une SSL Gteway installée (option d'OVH), qui explique peut-être le souci, et qui permettrai de garder une fonctionnement sur des ports différents (entre la gateway et le apache), tout en ayant les mêmes ports en local.

Affaire à suivre.

Dernière modification par elcastor (Le 15/05/2020, à 19:51)

Hors ligne

#9 Le 15/05/2020, à 20:43

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

en gros il faut simplement que l'enregistrement A de chaque nom de domaine pointe sur l'IP de ton serveur.

pour désactiver ou activer un site ça se fait avec

a2ensite

ou

a2dissite

évite les "redirection au niveau du DNS" (tu parles de quoi d'ailleurs ? un CNAME ?)
vu que ça met du temps à se propager et que c'est au mieux inutile dans ce contexte.

en gros ce que tu dis c'est qu'avec :

<VirtualHost *:80 *:443>
        ServerAdmin ici@chezmoi.fr
        ServerName siteb.fr
        DocumentRoot /var/www/siteb.fr/public
        DirectoryIndex /index.php

        <Directory /var/www/siteb.fr/public>
                AllowOverride None
                Order Allow,Deny
                Allow from All

                <IfModule mod_rewrite.c>
                        Options -MultiViews
                        RewriteEngine On

                        RewriteCond %{REQUEST_FILENAME} !-f
                        RewriteRule ^(.*)$ index.php [QSA,L]
                </IfModule>
        </Directory>

        # (Optional) Disable the RewriteEngine for the bundles asset directories
        <Directory /var/www/siteb.fr/public/bundles>
                <IfModule mod_rewrite.c>
                        RewriteEngine Off
                </IfModule>
        </Directory>

        ErrorLog /var/log/apache2/siteb.fr_error.log
        CustomLog /var/log/apache2/siteb.fr_access.log combined
</VirtualHost>

et

<VirtualHost *:80 *:443>
        ServerAdmin webmaster@siteA.com
        ServerName siteA.com
        DocumentRoot /var/www/siteA.com/public
        DirectoryIndex /index.php

        <Directory /var/www/siteA.com/public>
                AllowOverride None
                Order Allow,Deny
                Allow from All

                <IfModule mod_rewrite.c>
                        Options -MultiViews
                        RewriteEngine On
                        RewriteCond %{REQUEST_FILENAME} !-f
                        RewriteRule ^(.*)$ index.php [QSA,L]
                </IfModule>
        </Directory>

        # (Optional) Disable the RewriteEngine for the resources asset directories
        <Directory /var/www/siteA.com/public/resources>
                <IfModule mod_rewrite.c>
                        RewriteEngine Off
                </IfModule>
        </Directory>

        ErrorLog /var/log/apache2/siteA.com_error.log
        CustomLog /var/log/apache2/siteA.com_access.log combined
</VirtualHost>

siteA.com redirige le navigateur sur siteb.fr et affiche par conséquent le contenu de /var/www/siteb.fr/public ?
tu es sûr ?
si c'est le cas c'est qu'il y a une redirection à un autre niveau... .htaccess ou symfony lui-même par ex.

Hors ligne

#10 Le 15/05/2020, à 20:46

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

essaie de simplifier (par ex. pour exclure une éventuelle redirection de symfony) en créant des fichiers /var/www/siteX.com/public/test.html contenant simplement "site A" et "site B".
renomme aussi les éventuels /var/www/siteX.com/public/.htaccess pour éliminer cette hypothèse.

Hors ligne

#11 Le 22/05/2020, à 10:00

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

Bonjour,
c'était effectivement la passerelle de notre hébergeur qu'il fallait configurer pour deux sites. Le site A a été placé, en local, sur de nouveaux ports, avec une redirection sur la gateway, et le site B a été placé sur le 80 / 443. Maintenant les deux sites répondent sur les ports 80 / 443 depuis internet, tout en étant étanches, localement, sur le serveur. Le redirection web chez Gandi ont été supprimés, et j'ai rajouté l'entrée A qu'il faut sur les DNS.

Du coup... ben c'est résolu. Merci smile

Dernière modification par elcastor (Le 22/05/2020, à 10:01)

Hors ligne

#12 Le 22/05/2020, à 10:59

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

elcastor a écrit :

Le site A a été placé, en local, sur de nouveaux ports, avec une redirection sur la gateway

tant mieux si c'est résolu mais ça m'a l'air complexe pour rien, et surtout moins portable : la config de ton serveur dépend de ta passerelle alors qu'apache est parfaitement capable de gérer des dizaines de sites différents sur les ports standards.

Hors ligne

#13 Le 22/05/2020, à 11:25

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

oui, mais cette étanchéité entre les sites est voulu par mon partenaire... alors je m'y plie smile

Hors ligne

#14 Le 22/05/2020, à 12:06

krodelabestiole

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

ça n'a d'étanche que le numéro de port, hein ! (autant dire rien d'étanche...)
si on utilise les même utilisateurs pour les bases de données ou des permissions en 777, si un des sites tombe, l'autre suivra très probablement...
ou si un des sites surcharge le serveur, l'autre sera aussi ralenti ou planté (pareil pour une DDoS).
(je dis ça au cas où ça serait pas clair pour ton partenaire)

Hors ligne

#15 Le 22/05/2020, à 12:08

elcastor

Re : Multisites, certificats SSL + ports de redirection [RESOLU]

Oui oui, effectivement, mais les bases sont différentes, il n'y a aucun dossier ou fichier en 777, et les architectures sont identiques et plutôt propres...

Hors ligne