Я знаю, что такие вопросы уже есть, но они не помогли.

Я использую apache2 на Debian 7, и я могу получить доступ к своему сайту локально через 192.168.1.x а другие могут получить к нему доступ по моему IP-адресу. Теперь я хочу добавить имя поддомена, чтобы они могли получить доступ к определенной папке, например: subdomain.myip . Вот что у меня сейчас есть:

<VirtualHost *:80>
        ServerName username.localhost
        ServerAdmin username@localhost

        DocumentRoot /home/username/www/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /home/username/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/localhost.error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

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

Единственный способ получить к нему доступ в данный момент - перейти на username.localhost на самом Debian. Как я могу сделать так, чтобы я мог получить к нему локальный доступ, используя username.192.168.1.x и другие по username.myip?

1 ответ1

0

Прежде всего, измените username.localhost в ServerName на что-то другое. Localhost - это стандартное имя для IP-адреса 127.0.0.1, которое означает этот ПК. Таким образом, если кто-то попытается использовать username.localhost для доступа к вашему веб-сайту, он попытается найти его на своем компьютере вместо вашего. На самом деле это определение между localhost и 127.0.0.1 записано в файле hosts. Второе - вы не можете смешивать IP-адрес и доменное имя, например, username.192.168.1.x. Вам нужно использовать либо доменное имя (например, username.example.net), либо просто ip (192.168.1.x).

Если вы хотите придерживаться доменного имени, то вам нужен либо сервер доменных имен, либо для изменения упомянутого выше файла hosts на каждом компьютере, который должен получить доступ к вашему веб-сайту, добавьте следующую строку:

192.168.1.x    username.example.net

После этого используйте username.example.net для доступа к вашему сайту.

PS: не забудьте проверить, что брандмауэр на вашем сервере не блокирует TCP-порт 80

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