Настройка apache2
apache и предупреждение "NameVirtualHost ... has no VirtualHosts"
А все потому, что в КАЖДОМ файлике было упоминание NameVirtualHost *:80
Нужно оставить его только для default, т.к директива должна вызываться только 1 раз.
Убрал упоминание NameVirtualHost из всех файликов виртуальных хостов и предупреждение пропало.
Также, еще в файле /etc/apache2/ports.conf нужно закомментировать строку NameVirtualHost *:80
В итоге мой файлик для виртуального хоста имеет вид примерно такой:
<Virtualhost vtiger:*>
ServerAdmin webmaster@localhost
ServerName vtiger
#ServerAlias www.vtiger.lc
DocumentRoot /home/server/www/vtigercrm/
CustomLog /var/log/apache2/vtigercrm-access.log combined
<Directory /home/server/www/vtigercrm/>
#Options All
Options Indexes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php
Order allow,deny
allow from all
</Directory>
</Virtualhost>
Для сайта solarhome немного посложнее, т.к. он использует версию php 5.2
<VirtualHost solarhome:*>
ServerAdmin webmaster@solarhome.ru
ServerName solarhome
ServerAlias www.solarhome.lc
DocumentRoot /home/server/www/solarhome
Include php52.conf
CustomLog /var/log/apache2/solarhome-access.log combined
<Directory /home/server/www/solarhome>
# Options All
Options Indexes FollowSymLinks MultiViews
# AddHandler cgi-script .cgi .pl
AllowOverride All
DirectoryIndex index.htm
Order allow,deny
allow from all
</Directory>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/home/server/www/solarhome/cgi-bin/"
</IfModule>
<Directory "/home/server/www/solarhome/cgi-bin/">
AllowOverride All
Options +ExecCGI +Indexes
AddHandler cgi-script cgi pl
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Ошибка Permission denied: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down
возникает при попытке рестарта apache. Ошибка до безобразия глупая - просто нужно запускать рестарт от root :)
sudo service apache2 restart
Опубликовано