Как сделать точку Ip к другому IP и порту на AWS

голоса
0

Мне нужно иметь разные IP-адрес, указывающий на адрес Specific IP и порт экземпляра EC2, где я работает несколько сайтов на Apache виртуальных хостах Например: xx.xx.xx.xx -> 107.22.56.213:8080 yy.yy .yy.yy -> 107.22.56.213:8081

Является ли это на AWS Возможное?

Задан 13/01/2020 в 23:57
источник пользователем
На других языках...                            


2 ответов

голоса
0

Вы можете прикрепить несколько интерфейсов упругих сетей на вашем сервере ec2 и подключить каждое ENI с эластичным IP, вы можете настроить ваш aoache виртуального слушать конкретный IP и конкретный порта:

Это очень полезный блог

https://aws.amazon.com/blogs/aws/multiple-ip-addresses-for-ec2-instances-in-a-virtual-private-cloud/ https://vannstudios.com/how-to-set- до-множественный упруго-ф-на-амазонка-ec2 инстанция

для прокси-сервера URL ниже имеет подобный случай к вам:

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/ 
Ответил 14/01/2020 в 00:34
источник пользователем

голоса
0

Я знаю, что это не 100%, что вы просили, но это легко поставить сервер NGINX перед Apache один, и он лучше большую часть времени. Nginx конфигурации (с кэшированием) так просто ...

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;

        } 
    } 
}

Я сделал это со многими из моих серверов, и это хорошо работает, и на исходном сервере, можно указать заголовки кэша, так что верхний сервер NGINX будет кэшировать их так долго, как вы определяете:

<?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); 
?>

С аналогичной конфигурацией, моя статистика показывает загрузку страниц в 0.250 секундах, от 0,800 секунд.

Ответил 14/01/2020 в 06:26
источник пользователем

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