Comment faire un point ip à d'autres IP et le port sur AWS

voix
0

Je dois avoir des adresses IP différentes pointant vers une adresse IP spécifique et le port sur une instance EC2, où j'ai plusieurs sites en cours d'exécution sur les hôtes virtuels Apache Par exemple: xx.xx.xx.xx -> 107.22.56.213:8080 YY.YY .yy.yy -> 107.22.56.213:8081

Est-ce sur AWS es posible?

Créé 13/01/2020 à 21:57
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
0

Vous pouvez joindre plusieurs interfaces réseau élastique sur votre serveur EC2 et attacher chaque ENI IP élastique, vous pouvez configurer votre aoache virtuel pour écouter IP spécifique et de port spécifique:

Ceci est un blog très utile

https://aws.amazon.com/blogs/aws/multiple-ip-addresses-for-ec2-instances-in-a-virtual-private-cloud/ https://vannstudios.com/how-to-set- up-multiple-élastique ip-pour-amazon-ec2 instance

pour Proxy l'URL ci-dessous présente un cas similaire à vous:

https://serverfault.com/questions/557478/apache-reverse-proxy-forwarding-different-source-ip-ranges-to-different-destinat

RewriteCond %{REMOTE_ADDR} 54.158.187.139
RewriteRule ^/(.*) http://127.0.0.1:8080/$1 [P]
ProxyPassReverse / http://127.0.0.1:8080 

RewriteCond %{REMOTE_ADDR} 35.153.37.243
RewriteRule ^/(.*) http://127.0.0.1:8081/$1 [P]
ProxyPassReverse / http://127.0.0.1:8081/ 
Créé 13/01/2020 à 22:34
source utilisateur

voix
0

Je sais que ce n'est pas 100% ce que vous avez demandé, mais il est facile de mettre un serveur Nginx devant Apache un, et il fonctionne mieux la plupart du temps. config nginx (avec la mise en cache) est aussi simple que ...

http{

    proxy_cache_path /my_nginx_cache_folder levels=1:2 keys_zone=my_nginx_cache:2g max_size=2g
                     inactive=30d use_temp_path=off;


    server {

        listen       443 ssl;
        server_name  www.mydomain.com;

        ssl_certificate         /etc/letsencrypt/live/www.mydomain.com/fullchain.pem;
        ssl_certificate_key     /etc/letsencrypt/live/www.mydomain.com/privkey.pem; 

        location / {

                proxy_pass  http://mydomain-on-anotherip.com:8081;

                # the domain to request at the above IP
                proxy_set_header Host      mydomain.com;

                proxy_set_header X-Real-IP $remote_addr;

                # for this path, tell it to use the cache defined above
                proxy_cache             my_nginx_cache;

        } 
    } 
}

Je l'ai fait avec beaucoup de mes serveurs et il fonctionne bien, et à votre serveur source, vous pouvez spécifier les en-têtes de cache, de sorte que le serveur Nginx supérieur leur cache aussi longtemps que vous spécifiez:

<?php 
    $cache_seconds = 60*60*24;
    header("Expires: ".gmdate('D, d M Y H:i:s \G\M\T', time()+$cache_seconds));
    header("Cache-Control:public, max-age=".$cache_seconds); 
?>

Avec une configuration similaire, mes statistiques montrent le chargement des pages en 0,250 secondes, de 0,800 secondes.

Créé 14/01/2020 à 04:26
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more