Apache виртуальные хосты

Я надеюсь создавать ссылки на свой веб-сайт как support.mydomain.com или management.mydomain.com, а не mydomain.com/support и т.д. Я услышал, что можно сделать это с апачскими виртуальными хостами, но я не уверен, как я настроил бы его.

Я нахожусь на апачских 2.4 и человечности 16.04

3
задан 13 February 2017 в 16:36

1 ответ

распределение Apache2 идет с очень простым в использовании модульная конфигурация .

Копия Ваш 000-default.conf в /etc/apache2/sites-available в файл к тому времени называет Вас, назовет Ваш виртуальный сайт. Используйте файл 000-default.conf конфигурации в качестве шаблона.

В этом случае Вы указали mydomain.com. Вы также указали management.mydomain.com. Можно использовать обоих для обращения для доступа к тому же сайту. На этих шагах я буду использовать mydomain.com.

можно использовать любое название конфигурационного файла. Используя имя, которое включает имя, Вы будете для своего виртуального хоста, поможет управлять Вашими сайтами, если Вы сделаете много ими.

Выполнение эти шаги. Я пронумеровал их, чтобы помочь Вам указать, какой шаг, если таковые имеются, Вы застреваете или не понимаете. Эти $ там для представления терминальной подсказки, где Вы вводите свою команду. Команда является текстом, за которым Вы присматриваете эти $ подсказка.

1. $ mkdir -p /home/web/mysite/www
2. $ mkdir -p /home/web/mysite/log
3. $ cd /etc/apache2/sites-available
4. $ sudo cp 000-default.conf mydomain.conf
5. $ gksudo gedit mydomain.conf

Изменение от:

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.example.com

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

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

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet


Изменение в:

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.example.com

    ServerName mydomain.com
    ServerAlias www.mydomain.com
    ServerAlias management.mydomain.com

    ServerAdmin webmaster@localhost

    DocumentRoot /home/web/www
    <Directory /home/web/ubunzeus/www>
        Options +FollowSymLinks +ExecCGI +Includes
        # AllowOverride All
        # New directive needed in Apache 2.4.3: 
        Require all granted
    </Directory>
    
    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog /home/web/mydomain/log/error.log
    CustomLog /home/web/mydomain/log/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Продолжают следующие команды для активации изменений:

6. $ sudo a2ensite mydomain.conf
7. $ sudo service apache2 restart

С теми шагами, можно теперь получить доступ новому виртуальному хосту путем введения имени, которое Вы дали ему в веб-браузер.

Место Ваш webcontent (Ваш HTML файлы) в каталог Вы создали для своего виртуального хоста. В этом примере это: /home/web/www. Ваш веб-каталог может быть помещен куда угодно в Вашей системе. Просто необходимо настроить виртуальный файл конфигурации хоста с информацией.

Каждый раз, когда Вы вносите изменение в свои конфигурационные файлы Apache2 убедиться перезагрузить его для внесения изменений, вступают в силу.

$ sudo service apache2 restart
4
ответ дан 1 December 2019 в 15:51

Другие вопросы по тегам:

Похожие вопросы: