Налаштування Apache 2 Піддомен з використанням VirtualHost працює лише локально


0

Я знаю, що вже є такі питання, але вони не допомагають.

Я запускаю 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?


Ваш IP не є доменом, тому він не може мати піддоменів (або принаймні не тих, які вирішуються звичайними DNS-серверами). Щоб визначити субдомени, потрібно придбати домен.
user2313067

Відповіді:


0

Перш за все, зміни username.localhost в Ім'я сервера до чогось іншого. Localhost - це стандартне ім'я для IP-адреси 127.0.0.1, що означає цього ПК . Отже, якщо хтось намагається використовувати username.localhost Щоб отримати доступ до вашого веб-сайту, він спробує виконати пошук на своєму комп'ютері, а не на вашому. Фактично це визначення між localhost і 127.0.0.1 записується в господарів файл. Друга річ - ви не можете змішувати IP-адресу та доменне ім'я разом username.192.168.1.x . Потрібно використовувати будь-яке ім'я домену (наприклад, ім'я користувача.example.net) або просто ip (192.168.1.x).

Якщо ви хочете дотримуватися доменного імені, то вам потрібно або сервер доменних імен, або змінити згадане вище господарів файл на кожному комп'ютері, який має отримати доступ до вашого веб-сайту, додати цей рядок:

192.168.1.x    username.example.net

Після цього скористайтеся іменем username.example.net, щоб отримати доступ до свого сайту.

PS: Не забудьте перевірити, що брандмауер на вашому сервері не блокує порт tcp 80


Привіт, спасибі за відповідь. Я хочу, щоб люди могли отримати доступ до username.myip, якщо це можливо, я буду купувати домен для цього пізніше. Я налаштував його так ServerName username.myip і в господаря як 192.168.1.x username.myip (де x - це число, яке я використовую, і myip my ip). Все це без scucess, хоча, я не можу змусити когось відвідати username.myip, хоча вони можуть відвідати myip. Мені шкода, якщо я щось пропускаю або звучить нерозумно, але я не можу зрозуміти.
user368278

Це тому, що ви не можете змішувати IP-адресу та субдомен разом. Можна використовувати щось подібне 192.168.1.x / ім'я користувача однак.
Anthony
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.