Aller au contenu

Nginx Et Mail Station / Photo Station

Featured Replies

Posté(e)

Bonjour,

J'ai paramétré nginx et j'arrive à un résultat vraiment excellent, tout est OK sauf 2 choses :

Je sais que ce sont des virtualhosts sous Apache, mais je n'arrive pas à rediriger nginx vers ces deux virtual hosts...

Quelqu'un peut m'aider ?

Merci d'avance pour votre aide.

Posté(e)
  • Auteur

Alors, pour information, j'ai trouvé où sont configurés les VirtualHosts (ou plutot alias) pour Mail Station et Photo Station, c'est dans :

cd /etc/httpd/sites-enabled-user

On a le fichier SYNO.SDS.MailStation.conf :

<IfDefine HAVE_PHP>
        AliasMatch ^/mail$ "/var/packages/MailStation/target/roundcubemail/"
        Alias /mail/ "/var/packages/MailStation/target/roundcubemail/"
</IfDefine>

et aussi le fichier SYNO.SDS.PhotoStation.conf :

<Directory "/var/packages/PhotoStation/target/photo/empty">
        Options FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
</Directory>

<IfDefine HAVE_PHP>
        AliasMatch ^/photo$ "/var/packages/PhotoStation/target/photo/"
        Alias /photo/ "/var/packages/PhotoStation/target/photo/"
        AliasMatch ^/blog$ "/var/packages/PhotoStation/target/photo/blog/"
        Alias /blog/ "/var/packages/PhotoStation/target/photo/blog/"
        RedirectMatch ^/blog/include/v(.*) /photo/get_video.php?$1
        AliasMatch ^/~([^/]*)/photo$ "/var/packages/PhotoStation/target/photo/"
        AliasMatch ^/~([^/]*)/photo/(.*) "/var/packages/PhotoStation/target/photo/$2"
        AliasMatch ^/~([^/]*)/blog$ "/var/packages/PhotoStation/target/photo/blog/"
        AliasMatch ^/~([^/]*)/blog/(.*) "/var/packages/PhotoStation/target/photo/blog/$2"
        RedirectMatch ^/~([^/]*)/blog/include/v(.*) /~$1/photo/get_video.php?$2
</IfDefine>

<IfDefine !HAVE_PHP>
        AliasMatch ^/photo$ "/var/packages/PhotoStation/target/photo/empty/"
        Alias /photo/ "/var/packages/PhotoStation/target/photo/empty/"
        AliasMatch ^/blog$ "/var/packages/PhotoStation/target/photo/empty/"
        Alias /blog/ "/var/packages/PhotoStation/target/photo/empty/"
        RedirectMatch ^/blog/include/v(.*) /photo/get_video.php?$1
        AliasMatch ^/~([^/]*)/photo$ "/var/packages/PhotoStation/target/photo/empty/"
        AliasMatch ^/~([^/]*)/photo/(.*) "/var/packages/PhotoStation/target/photo/empty/$2"
        AliasMatch ^/~([^/]*)/blog$ "/var/packages/PhotoStation/target/photo/blog/empty/"
        AliasMatch ^/~([^/]*)/blog/(.*) "/var/packages/PhotoStation/target/photo/blog/empty/$2"
        RedirectMatch ^/~([^/]*)/blog/include/v(.*) /~$1/photo/get_video.php?$2
</IfDefine>

<Directory "/var/services/photo">
        Options Multiviews
        AllowOverride None
        Order allow,deny
        Allow from all
</Directory>

Maintenant, go se débrouiller avec ça.... lol :P

Posté(e)
  • Auteur

Je pense que dans nginx, il faut forcer le root pour ces deux redirections, l'alias ne s'appliquant pas sauf si vous avez une autre solution ?

Suis le seul à avoir ce problème ? lol

Posté(e)

Plusieurs personnes se sont déjà posé la question semble t il ... pas certain que la réponse fonctionne mais regarde là au càs où :

Posté(e)
  • Auteur

Alors, ca marche.... mais pas comme je veux... Oui, je sais, je suis exigeant.... lol :P

server {
    listen       *:6443 ssl;
    server_name  ~^mail..*$;
    include ssl_defaults.conf;
    location / {
        root  /var/packages/MailStation/target/roundcubemail;
    }
    location /mail {
        include proxy_defaults.conf;
        proxy_pass  https://localhost:443/mail;
    }
}

Si je tape http://mail.mondomaine.fr, ca ne marche pas... Mais ca marche avec http://mail.mondomaine.fr/mail.

J'ai essayé de mettre comme ceci mais sans succès :

server {
    listen       *:6443 ssl;
    server_name  ~^mail..*$;
    include ssl_defaults.conf;
    location / {
        root  /var/packages/MailStation/target/roundcubemail;
        include proxy_defaults.conf;
        proxy_pass  https://localhost:443;
    }
}

Je continue à chercher, finirais bien par trouver. ;)

Posté(e)

c'est bizarre, je met toujours une ligne proxy_reverse moi, enfin, j'utilise plus nginx, mais avant

aussi, inutile de faire du https en localhost, ca surcharge le nas pour rien

internet <-- https--> nginx <-- http --> service local

j'ai été reprendre le code chezun ami :

<VirtualHost *:443>                                      
  ServerName nas.mondomain.be                          
  ProxyPass /photo/ http://127.0.0.1:80/photo/
  ProxyPassReverse /photo/ http://127.0.0.1:80/photo/
  ProxyPass /blog/ http://127.0.0.1:80/blog/         
  ProxyPassReverse /blog/ http://127.0.0.1:80/blog/  
  ProxyPass / http://127.0.0.1:5000/                 
  ProxyPassReverse / http://127.0.0.1:5000/          
</VirtualHost>                                         

Modifié par Gaetan Cambier

Posté(e)
  • Auteur

Ben, pas de ligne avec proxy_reverse et pour tant tout fonctionne.

Suis meme en Full HTTPS du début à la fin.

Posté(e)
  • Auteur

Je pense avoir trouvé la solution (à base de rewrite oui), mais j'ai des effets de bords où alors je ne mets pas correctement la syntaxe. Dès que j'ai trouvé, je vous le dit.

Modifié par Terrano

Posté(e)

Essaye ca !!

Mailstation :

server {
    listen       *:6443 ssl;
    server_name  mail.tondomaine.xx;
    include ssl_defaults.conf;
    location / {
       include proxy_defaults.conf;
       proxy_pass https://localhost:443/mail;
    }
}

Photostation:

server {
    listen       *:6443 ssl;
    server_name  photo.tondomaine.xx;
    include ssl_defaults.conf;
    location / {
       include proxy_defaults.conf;
       proxy_pass https://localhost:443/photo;   
    }
}

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.