If i help You, send me BTC please 1CJGz4UGyL7hTjPeN8j7fu9LRmmWiWSRHi

Виртуальные хосты в Lampp.

Постов 81 из 175

Решил дополнить немного эту статью.

Скачав и разархивировав файлы Lampp, теперь нужно проделать некоторые действия.

Нужно добавить кое-что в файл httpd-xampp.conf:

sudo gedit /opt/lampp/etc/extra/httpd-xampp.conf

в фрагменте кода, описывающем доступ к phpmyadmin:

# since XAMPP 1.4.3
<Directory "/opt/lampp/phpmyadmin">
# вставить вот это:
AllowOverride AuthConfig Limit
Order allow,deny
Allow from 192.168.0.0/24

</Directory>

Это для того, чтобы получить доступ к phpmyadmin, который сразу недоступен согласно «New XAMPP security concept«.
Чтобы достучаться по сети к админке хоста с Lampp еще необходимо подредактировать запись:

<LocationMatch "^/(?i:(?:xampp|licenses|phpmyadmin|webalizer|server-status|server-info))">
# вставить вот это:
Order allow,deny
Allow from 192.168.0.0/24
# или, чтобы открыть доступ только для IP:
Allow from 10.1.1.12
ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var

вариант для открытия доступа из всех диапазонов для локальных подсетей:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
<RequireAny>
Require ip ::1 127.0.0.0/8 \
fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
fe80::/10 169.254.0.0/16
</RequireAny>
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

Или так:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
Order deny,allow
Deny from all
Allow from ::1 127.0.0.0/8 \
fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
fe80::/10 169.254.0.0/16

ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

Теперь о виртуальных хостах.

Чтобы создать виртуальный хост, скажем new_site, нужно:
1. В файле httpd.conf раскомментировать строку Include etc/extra/httpd-vhosts.conf

sudo gedit /opt/lampp/etc/httpd.conf

2. В файле /opt/lampp/etc/extra/httpd-vhosts.conf добавить такое содержимое:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/home/usefree/new_site"
# /home/usefree/new_site - каталог, куда положим файлы сайта
ServerName new_site
<Directory /home/usefree/new_site>
AllowOverride All
Options All
Require all granted
</Directory>

</VirtualHost>
# то что ниже - чтобы остался доступ к странице по-умолчанию localhost
<VirtualHost *:80>

ServerAdmin we[email protected]
DocumentRoot /opt/lampp/htdocs
ServerName localhost
ServerAlias localhost
</VirtualHost>

3. В файле /etc/hosts добавить запись:

127.0.0.1 new_site

Чтобы запретить доступ всем подряд к phpmyadmin, нужно зайти в http;//localhost/phpmyadmin и выполнить запрос:

SET PASSWORD FOR [email protected] = PASSWORD('yourpassword');

А затем в файле: /opt/lampp/phpmyadmin/config.inc.php отредактировать блок кода, вставив метод аутентификации, например cookie:

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';

Про ошибки.
Если возникают ошибки о том, что запущен другой web-сервер, то необходимо его найти и остановить, для чего или остановить сервис апаче, если запущен:
/etc/init.d/apache2 stop
или удалить файл блокировки, созданный предыдущим запуском апаче:
rm -rf /opt/lampp/logs/httpd.pid
или, если предыдущие способы не помогли — искать, что слушает порт 80 и убивать:
lsof -Pi | grep 80
Если в выдаче есть что-то — то убить.

, ,

Menu