VM에서 Apache를 실행하되 호스트에서 파일을 제공하려면 어떻게 해야 합니까?

VM에서 Apache를 실행하되 호스트에서 파일을 제공하려면 어떻게 해야 합니까?

알겠습니다. 설명하기가 조금 까다롭지만 최선을 다하겠습니다.

VM(Windows XP 모드)에서 Apache를 실행하고 있으며 다음을 수행하고 싶습니다.

  1. 내 기본 컴퓨터(호스트)에 웹사이트 파일을 저장하고 편집합니다.
  2. VM(게스트) 내의 브라우저에 제공

현재 VM의 모든 것을 저장, 편집 및 제공하고 있지만 백업, Git 등에 대해서는 분명히 쓸모가 없으므로 가상 머신에서 물리적 디렉터리로 가져오고 싶습니다.

내 VM 호스트 파일은 현재 모든 도메인을 127.0.0.1로 가리킵니다.

127.0.0.1    davestewart.local
127.0.0.1    davestewart.remote

내 VM Apache httpd-vhosts.conf 파일은 다음과 같습니다.

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "c:/xampp/htdocs"
</VirtualHost>

<VirtualHost *:80>
    ServerName davestewart.local
    ServerAlias www.davestewart.local
    DocumentRoot "c:/xampp/htdocs/davestewart.co.uk"
    <Directory "c:/xampp/htdocs/davestewart.co.uk">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerName davestewart.remote
    DocumentRoot "//dave-desktop/work"
    <Directory "//dave-desktop/work">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

사이트의 .local 버전은 훌륭하게 실행되고 VM에서 완전히 볼 수 있지만 .remote 버전은 XAMPP 403 액세스 금지를 출력합니다! 페이지.

내 서버 기술은 일부 .htaccess 및 .conf 편집으로 확장되며 일반적으로 온라인 튜토리얼에서 내용을 함께 해킹하지만 내가 하고 있는 일에 대한 실제 지식은 없습니다(코딩과 달리 훨씬 쉽다고 생각함).

고마워요, 데이브

답변1

사용을 고려해보세요방랑자. 기본적으로 VM에는 루트 폴더에 있는 모든 파일이 /vagrant. 따라서 파일을 제공하도록 Apache(VM에서)를 구성할 수 있으며 , 제공되는 파일은 Vagrantfile이 있는 폴더의 하위 디렉터리 /vagrant/web에 있는 파일이 됩니다 . web자세한 내용은 다음에서 확인할 수 있습니다.문서.

답변2

심볼릭 링크를 사용해 보는 것은 어떨까요? 나는 그것이 리눅스에서 작동한다는 것을 안다. 호스트 드라이브에 파일을 보관하기만 하면 됩니다. 그런 다음 VM에서 호스트 드라이브에 대한 심볼릭 링크를 만듭니다. 짜잔. 파일은 호스트에 있지만 VM은 해당 파일이 로컬에 있다고 "생각"합니다.

우리는 현재 현장에서 작업 파일에 액세스할 수 있도록 사무실 사이트를 통해 파일에 대한 일종의 백도어용으로 이 설정을 사용하고 있습니다. 그러나 우리는 작업 파일이 웹 서버에 "들어가는" 것을 원하지 않지만 웹 사이트를 통해 현장에 파일을 서버로 제공하려면 웹 서버가 필요합니다. 심볼릭 링크는 우리에게 매우 효과적입니다.

관련 정보