2

Моя домашняя настройка выглядит следующим образом:

Интернет -> маршрутизатор pfsense -> Несколько компьютеров с Windows 7 Ubuntu NAS с Webmin

У меня есть динамическая настройка DNS, поэтому я обновляю www.domainname.com с помощью глобальной сети pfsense

Например, имея веб-сервер Java VNC на двух компьютерах с Windows 7, я могу настроить его так, например:

www.domain.com:5800 - это ПК1 www.domain.com:5901 - это ПК2

Что я хочу знать, так это то, можно ли установить apache на коробку ubuntu, перенаправить трафик порта 80 на него и настроить его так:

www.domain.com/PC1 перенаправить на ПК1 Java VNC-сервер через порт по умолчанию www.domain.com/PC2 перенаправить на ПК2 VNC и т. д.

Если это возможно, некоторые указатели будут оценены.

2 ответа2

2

попробуй apache переписать движок. что-то вроде:

<VirtualHost ubuntu:80>
    ServerName domainname.com
    RewriteCond %{REQUEST_URI}      ^/PC1
    RewriteRule ^/(.*)$             http://pc1:5800/$1 [R=permanent,L]
    RewriteCond %{REQUEST_URI}      ^/PC2
    RewriteRule ^/(.*)$             http://pc1:5901/$1 [R=permanent,L]
</VirtualHost>

Обновить. Я только что понял, что эти два ПК могут быть недоступны из Интернета, то есть за маршрутизатором без внешних IP-адресов. в этом случае вы должны изменить вышеперечисленное, чтобы он перенаправлял запросы на одну и ту же машину с Ubuntu по разным портам, а затем передавал прокси на локальные серверы Windows:

<VirtualHost ubuntu:80>
    ServerName domainname.com
    RewriteCond %{REQUEST_URI}      ^/PC1
    RewriteRule ^/(.*)$             http://ubuntu:5800/$1 [R=permanent,L]
    RewriteCond %{REQUEST_URI}      ^/PC2
    RewriteRule ^/(.*)$             http://ubuntu:5901/$1 [R=permanent,L]
</VirtualHost>

<VirtualHost ubuntu:5800>
    ServerName domainname.com
    ProxyPass / http://pc1:5800/
    ProxyPassReverse / http://pc1:5800/
</VirtualHost>

<VirtualHost ubuntu:5901>
    ServerName domainname.com
    ProxyPass / http://pc2:5901/
    ProxyPassReverse / http://pc2:5901/
</VirtualHost>

уфф ... надеюсь, это поможет ... :)

1

Попробуй это:

<VirtualHost ubuntu:80>
  ServerName domainname.com
  ProxyPass /PC1 http://pc1:5901/
  ProxyPassReverse /PC1 http://pc1:5901/
  ProxyPass /PC2 http://pc2:5901/
  ProxyPassReverse /PC2 http://pc2:5901/
</VirtualHost>

Гораздо проще, чем возиться с RewriteRule

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .