
몇가지 정보:
mysite.com:9999로 이동하면 45.40.45.40:9999 ..와 같은 사이트가 표시되고 45.40.45.40은 내 라우터의 공개 IP이고 그 뒤에 우분투의 virtualbox에 있는 내 Apache 서버를 연결하는 데 사용되는 비표준 포트가 있습니다. .
mysite.com을 내 public_ip:used_port_to_connect_Apache로 리디렉션하기 위해 namecheap.com에서 DNS 리디렉션을 사용하므로 연결된 후 URL에 45.40.45.40:9999가 됩니다.
내 질문은: '45.40.45.40:9999'를 mysite.com 전용인 원래 도메인 이름으로 어떻게 변환/반환할 수 있습니까?
내가 무엇을해야 하나? 이것은 어딘가에 Apache 구성 설정입니까? Apache 서버의 가상 호스트입니다.
/etc/apache2/sites-available/mysite.com.conf:
Listen 9999
<VirtualHost *:9999>
<Directory /var/www/mysite.com/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ServerAdmin [email protected]
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
도와주세요.
답변1
mysite.com을 45.40.45.40으로 확인하면 됩니다. 그런 다음 연결http://mysite.com:9999귀하의 브라우저에서. 리디렉션이 필요하지 않습니다. 또한 라우터나 아파치 구성에서 아무것도 변경할 필요가 없습니다.
포트 번호도 숨기려면 원래 수행한 리디렉션을 역방향 프록시로 바꿔야 합니다. 그것은 포트 80에서 수신 대기하는 일부 서버(apache, nginx, ...)가 될 것입니다.프록시실제 웹 서버에 대한 요청입니다. 모든 요청은 항상 이 역방향 프록시를 통과합니다. 역방향 프록시를 설정하는 방법에 대한 답변이 이미 있습니다. 예:
그러나 이를 수행하는 데는 상당한 노력이 필요하며 얻을 수 있는 것은 URL에 몇 글자가 적다는 것뿐입니다.