web-dev-qa-db-fra.com

Rediriger le port 5000 OSRM d'un sous-domaine dans Apache2

Petite description: redirige le port 5000 vers un sous-domaine

Description: Eh bien, j'ai un programme "superviseur" qui a un OSRM (carte de routage de rue ouverte), il est exécuté dans le port 5000 , je souhaite rediriger ce port vers un sous-domaine example.mywebsite.com , tous avec Apache

Mon SO: est Ubuntu 14.04.4 LTS

version Apache: Apache/2.4.7 (Ubuntu)

J'ai un fichier pour chaque sous-domaine dans:/etc/Apache2/sites-available /

Je veux un fichier pour mon problème là-bas ...

Je ne sais pas comment le faire. Cela en aidera un autre, et je fais un tuto pour installer nominatim, et osrm, avec Apache ...

1
DarckBlezzer

Le service fonctionne sur le port 5000 ) , vous souhaitez afficher, et vous fournir un service proxy qui se trouve dans 127.0. 0.1: 5000 ou dans mywebsite.com:5000 dans un sous-domaine ou un domaine tel que osrm.mywebsite.com ou myosrmwebsite.com

Vous aurez besoin d'activer mod_proxy dans Apache2 en premier. Alors lancez ces commandes en tant que root ou Sudo:

a2enmod proxy
a2enmod proxy_http

Editez votre fichier hôtes

# if you don't have access try with Sudo
nano /etc/hosts

Ajoutez une entrée dans votre fichier hosts

# path /etc/hosts
127.0.0.1 subdomainname.mywebsite.com
87.164.25.1 subdomainname.mywebsite.com

Le 87.164.25.1 est un exemple d'ip public, il n'est pas réel

Après cela nous devons aller à /etc/Apache2/sites-available

cd /etc/Apache2/sites-available

Créez un fichier * .conf pour notre sous-domaine ou domaine

nano subdomainname.mywebsite.com.conf

Dans ce fichier, nous allons créer une configuration pour transférer notre port sur le nom du serveur

#filename 'subdomainname.mywebsite.com.conf'
#dir /etc/Apache2/sites-available
<VirtualHost *:80>
    ServerName osrm.website.com  # my subdomain or website name server
    ProxyPass               /       http://localhost:5000/
    ProxyPassReverse        /       http://localhost:5000/
    ProxyRequests     Off

    ErrorLog ${Apache_LOG_DIR}/error.log
    CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>

remarque: Si, lorsque vous essayez de voir le site Web par le biais de l'URL, rien ne se passe, essayez de remplacer <VirtualHost *:80> par <VirtualHost 87.164.25.1:80>. ip ce serveur a.

Ajoutez le fichier * .conf à Apache avec cette commande et vérifiez la liste des commandes.

Pour l'activer

Sudo a2ensite subdomainname.mywebsite.com.conf

Pour le désactiver

Sudo a2dissite subdomainname.mywebsite.com.conf

Pour lister tous les sites active

# if you want to know what sites are enables.. or check if it is enable
Apache2ctl -S

Pour recharger Apache ou redémarrer

# only reload the config files without restart
Sudo service Apache2 reload

# restart Apache
Sudo service Apache2 restart


Sites de référence

  1. Comment configurer un sous-domaine sur Ubuntu Server 14.04
  2. Obtenir une liste de tous les hôtes virtuels définis dans tous les fichiers de configuration Apache
  3. Port proxy sur site - exemple n ° 1 - https://serverfault.com/a/140161
  4. Port proxy sur site - exemple n ° 2 - http://freedif.org/how-to-redirect-a-port-to-a-sub-domain-proxypass/
  5. Port proxy sur site - exemple n ° 3 - https://stackoverflow.com/a/8442270/5287072
  6. Port proxy sur site - exemple n ° 4 - https://stackoverflow.com/a/589479/5287072

* Je mets un titre et une URL si, pour une raison quelconque, il échoue ...

2
DarckBlezzer