- Xampp config inc php установить хост
- Как настроить виртуальный хост — XAMPP + Windows / Ubuntu
- Настройка виртуального хоста в Windows
- Настройка виртуального хоста в Ubuntu 16.04
- How to setup a Virtual Host locally with XAMPP in Ubuntu
- 1. Allow the usage of custom virtual hosts
- 2. Create a custom domain in the hosts file of your system
- 3. Create your first virtual host
- 4. Test your virtual host
Xampp config inc php установить хост
Как настроить виртуальный хост — XAMPP + Windows / Ubuntu
Как по мне, работать гораздо удобнее, когда для каждого разрабатываемого сайта создан виртуальный хост. Кратко рассмотрим настройку хостов в XAMPP под Windows и Linux Ubuntu.
Настройка виртуального хоста в Windows
Шаг 1
Если мы создаём первый виртуальный хост, то надо открыть файл httpd.conf (в моём случае путь к нему D:\xampp\apache\conf\httpd.conf ), найти строку
Include conf/extra/httpd-vhosts.conf
и раскомментировать её, (т.е. убрать символ решётки перед строкой). Повторюсь, это действие выполняется однократно, и для настройки последующих виртуальных хостов не потребуется.
Шаг 2
Открываем файл httpd-vhosts.conf , который находится в поддиректории extra (опять-таки, в моём случае путь D:\xampp\apache\conf\extra\httpd-vhosts.conf ) и описываем наш виртуальный хост. Если разрабатываемый сайт будет располагаться в директории xampp/htdocs , то достаточно и минимальных настроек:
DocumentRoot "D:/xampp/htdocs/blog" ServerName blog.local
Если же мы хотим расположить сайт в какой-либо иной директории, то при таких настройках скорее всего получим ошибку 403:
You don’t have permission to access the requested directory. There is either no index document or the directory is read-protected.
Посему, понадобится добавить ещё несколько строк (предположим, что сайт находится на диске D в директории web ):
DocumentRoot "D:/web/blog" ServerName blog.local Require all granted
Директива Require all granted в Apache 2.4 аналогична директиве Allow from all в предыдущих версиях Apache и разрешает доступ к указанной директории.
Есть ещё один важный нюанс. Если мы хотим в имени сайта использовать что-то вроде доменной зоны – в примере выше local – название этой «доменной зоны» не должно совпадать с реально существующими зонами. В противном случае получим ошибку а-ля «Подключение не защищено» и будем долго думать, в чём проблема. Я раньше часто использовал .dev , но сейчас это уже недопустимо.
Шаг 3
Открываем файл C:\Windows\System32\drivers\etc\hosts и вставляем строку:
Перезапускаем XAMPP, вводим в адресной строке браузера blog.local и готово. Случается, браузер воспринимает наш адрес как поисковой запрос. В этому случае просто введём http://blog.local . Для создания других виртуальных хостов надо просто повторить шаги 1 и 2.
Настройка виртуального хоста в Ubuntu 16.04
По большому счёту, мы повторим практически те же шаги, что и для Windows, но есть свои нюансы.
Шаг 1
Открываем терминал и переходим в режим root , т.е. вводим команду:
Шаг 2
Отредактируем файл httpd.conf . Можно использовать любой редактор, я буду пользоваться nano . Выполним в терминале команду:
В файле найдём строку с DocumentRoot и после допишем следующее:
Options Indexes FollowSymLinks ExecCGI Includes AllowOverride All Require all granted
Где YourDirectory – путь к директории, где будут находиться разрабатываемые сайты. Например /home/serhii/web . И снова – этот шаг требуется только при настройке первого виртуального хоста.
Шаг 3
Так же, как и в случае с Windows, опишем виртуальный хост. Открываем нужный файл в nano командой:
nano /opt/lamp/etc/extra/httpd-vhosts.conf
И вставляем следующие строки:
DocumentRoot "/home/serhii/web/blog" ServerName blog.local
Шаг 4
И последним отредактируем файл hosts , для чего выполним команду:
Перезапускаем XAMPP и можно приступать к работе.
P.S. В описисании хоста (шаг 2 для Windows и шаг 3 для Ubuntu) по желанию можно было бы также прописать и другие директивы, такие как псевдоним сервера, путь к логам и т.д., о чём подробнее можно почитать в документации.
How to setup a Virtual Host locally with XAMPP in Ubuntu
Learn how to setup a virtual host easily using XAMPP in Ubuntu.
The usage of virtual hosts in xampp is the practice of running more than one web site (that targets local resources) on a single machine.
Virtual hosts are IP-based, meaning that you have a different IP address for every web site, or «name-based», meaning that you have multiple names running on each IP address. This practice using XAMPP comes in handy when you want to simulate a production environment (however working in dev environment) locally accessing to your project by a normal URL in the browser.
To setup a custom virtual, we need to follow these steps:
- Allow the usage of the vhosts.conf file editing the httpd.conf file.
- Now create a custom domain in the hosts file of the system ( /etc/hosts ).
- Create your own virtual host.
- Start apache.
- Test it.
1. Allow the usage of custom virtual hosts
By default, xampp in ubuntu won’t use the httpd-vhosts.conf file (the location of the virtual hosts), therefore we need to indicate that this file will be included during the runtime of apache. Open with your favorite code editor the httpd.conf file located tipically in /opt/lampp/etc or just execute the following command in your terminal to open a simple editor:
sudo gedit /opt/lampp/etc/httpd.conf
Now locate yourself in (about) the line 487 where you probably will find the following lines:
# Virtual hosts #Include etc/extra/httpd-vhosts.conf
As you can see, the Include statement that includes the httpd-vhosts.conf file is commented. Proceed to modify the line uncommenting that line:
# Virtual hosts Include etc/extra/httpd-vhosts.conf
And you’re ready to configure your custom vhost.
2. Create a custom domain in the hosts file of your system
You need to create a custom domain where our apache virtual host will point to. This domain will be normally an ip (127.0.0.xx based) and a custom name.
To start, edit the hosts file located in /etc using your favorite code editor, or just by executing the following command in the terminal:
And proceed to add your custom host. In this example, our ip will be 127.0.0.3 and the domain myawesomeproject . So finally, our hosts file will look like:
127.0.0.1 localhost 127.0.0.5 myawesomeproject #don't touch other existent values # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
Save the file, and now the domain myawesomeproject is an alias for the local address 127.0.0.5 .
3. Create your first virtual host
Tipically, you need to create the virtual host in the httpd-vhosts.conf file located in /opt/lampp/etc/extra . Use your favorite editor to edit that file or just execute the following command to edit it in a terminal:
sudo gedit /opt/lampp/etc/extra/httpd-vhosts.conf
And create your own virtual host in this file. As shown in our custom domain in the vhost file of the system, the port that we are going to use is 127.0.0.5 , therefore our virtual host will be:
DocumentRoot "/opt/lampp/htdocs/my-first-project" DirectoryIndex index.php Options All AllowOverride All Require all granted
The deep and custom configuration of your VirtualHost is up to you. Save the file, and you’re ready to test it.
4. Test your virtual host
To test it, in the folder /opt/lampp/htdocs/my-first-project , create a simple PHP file ( index.php ) that will contain the following PHP code:
Start apache, mysql (entire XAMPP) using the following command (or whatever the way you start apache and the other required services):