Виртуальный хост Wsl Ubuntu и файл хостов в Windows

Я пытаюсь получить к нему доступ через браузер Windows и терплю неудачу. в чем моя ошибка?

Я использую WSL2 в Windows 10 с Ubuntu 20.
У меня есть сервер Apache и приложение laravel, которое я установил по адресу/var/www/law
В файле хостов Windows я добавил это:

      127.0.0.1   law.dev
::1 law.dev

и этоlaw.confфайл, который находится по адресу/etc/apache2/sites-available.

      <VirtualHost *:80>
    ServerName law.dev


    DocumentRoot /var/www/law/public

    <Directory /var/www/law>
    Options Indexes MultiViews
    AllowOverride None
    Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

1 ответ

Ваша Linux-система WSL2 имеет собственный IP-адрес.

Вы можете получить его текущий IP-адрес с помощью этой команды (на вашем хосте Windows с помощью PowerShell или CMD.EXE):wsl hostname -I

Теперь вы можете использовать этот IP-адрес в файле хостов (на хосте Windows).

IP-адрес вашей системы WSL2 не является статическим, поэтому, если вы перезагрузите компьютер, ваш хост WSL2 будет иметь другой IP-адрес.

Дополнительную информацию можно найти в этом билете: https://github.com/microsoft/WSL/issues/4210 .

Если вы хотите получить доступ к своему веб-серверу Apache на локальном хосте, вам необходимо использовать WSL1, который использует интерфейс хоста Windows.

Вы можете преобразовать свою Linux-систему WSL2 в WSL1 с помощью этой команды («Ubuntu» может отличаться в вашей системе):

      wsl --set-version Ubuntu 1

Чтобы получить имя вашей системы WSL2:

      wsl --list --verbose

Вывод (пример):

        NAME      STATE           VERSION
* Ubuntu    Running         2
Другие вопросы по тегам