내 개발 컴퓨터(Debian 10)에서 실행되는 로컬 apache2 및 mariaDB 서버가 있습니다. 동시에 여러 웹사이트를 이용할 수 있도록 가상 호스트를 사용하고 있습니다. 나는 목표를 달성하기 위해 다음 단계를 수행합니다.
1) 웹사이트에 대한 conf 파일을 생성하고 편집합니다.sudo nano /etc/apache2/sites-available/website.conf
2) 파일을 다음과 같이 채웁니다.
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName website.local
ServerAlias www.website.local
DocumentRoot /var/www/website/public_html/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
삼)sudo a2ensite website.conf
4)sudo systemctl reload apache2
5) 호스트 파일을 편집합니다. sudo nano /etc/hosts
, 다음 줄을 추가합니다.127.0.0.1 website.local
이 시점에서는 작동합니다. 에 가면 http://website.local
새로 만들어진 로컬 웹사이트로 리디렉션됩니다.
다른 컴퓨터가 내 PC의 IP 주소로 이동하는 순간(예를 들어, 10.0.0.100
그들은 내 파일로 이동합니다 /var/www/html/index.html
. 설정한 적이 없기 때문에 이것이 작동하는 이유는 모르겠습니다. 하지만 작동합니다.
내 소원: 10.0.0.100
내 네트워크 내의 PC로 이동하면 내가 가지고 있는 로컬 웹사이트로 리디렉션되는 목록을 (수동으로) 배치할 수 있는 페이지가 열립니다. 예를 들어:
<ul>
<li><a href="http://website1.10.0.0.100/">Website1</a></li>
<li><a href="http://website2.10.0.0.100/">Website2</a></li>
<li><a href="http://website3.10.0.0.100/">Website3</a></li>
</ul>
현재로서는 이를 달성하는 방법을 알 수 없기 때문에 올바른 방향을 제시하고 싶습니다.
답변1
원하는 작업은 해당 이름(일명 website.local
)을 네트워크 DNS에 등록하여 달성할 수 있습니다.
같은 이름은 문자열( )로 시작하므로 모든 클라이언트에서 FQDN으로 간주되므로 website1.10.0.0.100
직접 구현하는 것이 불가능합니다 . 따라서 모든 클라이언트는 최상위 도메인 website1
에서 어떤 DNS 서버가 권한이 있는지 알아내려고 시도할 것입니다 . .... 아마도 짐작하셨겠지만 이 TLD는 존재하지 않습니다..100
DNS를 수정하지 않고 컴퓨터에 3개의 다른 사이트를 구현할 수 있는 가장 쉬운 방법은 다음과 같습니다.
컴퓨터에 3개의 서로 다른 IP 주소가 있습니다(, 등을 사용하여
ifconfig eth0 add 10.0.0.101
...ifconfig eth0 add 10.0.0.102
).Apache에 IP 기반 가상 호스트를 구현하십시오.
그런 식으로 보이는 첫 페이지를 만드세요:
<ul>
<li><a href="http://10.0.0.100/">Website1</a></li>
<li><a href="http://10.0.0.101/">Website2</a></li>
<li><a href="http://10.0.0.102/">Website3</a></li>
</ul>
이를 구현하는 또 다른 (더 복잡한) 방법은 다음과 같습니다.
예를 들어 TLD에 대한 권한을 부여하려면 머신에 자체 DNS 서버를 구현하세요
.bibicomputer
.bibicomputer
DNS 영역 에서 makewebsite1.bibicomputer
,website2.bibicomputer
등은 IP 주소를 가리킵니다.직장 동료에게 DNS 목록(linux: 아래
/etc/resolv.conf
)에 귀하의 IP 주소를 추가하도록 요청하십시오.
하지만 귀하 회사의 IT 담당자는 이 솔루션을 좋아하지 않을 것입니다.