LINUX.ORG.RU
ФорумAdmin

Apache/2.4.25 (Debian Stretch) после обновления перестали работать виртуальные хосты

 ,


0

3

Обновился до Stretch и подвох возник там где его совсем не ожидаешь. Перестали работать виртуальные хосты. Есть у меня виртуал хост cacti.ns.home Сделал я его путем редактирования родного файла cacti.conf и имеет он такой вид

<VirtualHost *:80>
ServerName cacti.ns.home
#ServerAlias cacti
ServerAdmin *****@*****.***
DocumentRoot "/usr/share/cacti/site"


<Directory "/usr/share/cacti/site">
<------>Options +FollowSymLinks
<------>AllowOverride None
<------><IfVersion >= 2.3>
<------><------>Require all granted
<------></IfVersion>
<------><IfVersion < 2.3>
<------><------>Order Allow,Deny
<------><------>Allow from all
<------></IfVersion>

<------>AddType application/x-httpd-php .php

<------><IfModule mod_php.c>
<------><------>php_flag magic_quotes_gpc Off
<------><------>php_flag short_open_tag On
<------><------>php_flag register_globals Off
<------><------>php_flag register_argc_argv On
<------><------>php_flag track_vars On
<------><------># this setting is necessary for some locales
<------><------>php_value mbstring.func_overload 0
<------><------>php_value include_path .
<------></IfModule>

<------>DirectoryIndex index.php



</Directory>
LogLevel debug
</VirtualHost>

на jessie всё работало как часы. Тут же не в какую. Если файл привести к исходному виду и обращаться ns.home/cacti то всё работает. Подобным же образом был переделан файл phpmyadmin'a он тоже перестал работать. Работают только алиасы. В журнале ошибок апача при обращении есть такие строки

cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/tab_graphs.gif HTTP/1.1" 404 520 "http://cacti.ns.home/" "Mozilla/5.0 (Wi
cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/left_border.gif HTTP/1.1" 404 521 "http://cacti.ns.home/" "Mozilla/5.0 (W
cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/menu_line.gif HTTP/1.1" 404 519 "http://cacti.ns.home/" "Mozilla/5.0 (Win
Смущает «GET /cacti/images/left_border.gif HTTP/1.1» 404 521 особенно /cacti вначале запроса. Т.к. если в криво открывшимся главном окне кактуса нажать на любую ссылку то ссылаться он будет на
http://cacti.ns.home/cacti/plugins.php
и выдаст 404 Not Found, а не на
http://cacti.ns.home/plugins.php
При прямом обращении на "http://cacti.ns.home/plugins.php" страницу он отдаст, но беp разметки и картинок, т.к. картинки будут ссылаться на
GET /cacti/images/left_border.gif HTTP/1.1" 404 521 "http://cacti.ns.home/plugins.php"
Вот список /etc/apache2/mods-enabled
│@access_compat.load                                   
│@alias.conf                                           
│@alias.load                                           
│@auth_basic.load                                      
│@authn_core.load                                      
│@authn_file.load                                      
│@authz_core.load                                      
│@authz_host.load                                      
│@authz_user.load                                       
│@autoindex.conf                                        
│@autoindex.load                                        
│@deflate.conf                                          
│@deflate.load                                          
│@dir.conf                                              
│@dir.load                                              
│@env.load                                              
│@filter.load                                          
│@mime.conf                                            
│@mime.load                                             
│@mpm_prefork.conf                                      
│@mpm_prefork.load                                      
│@negotiation.conf                                      
│@negotiation.load                                      
│@php7.0.conf                                          
│@php7.0.load                                          
│@reqtimeout.conf                                      
│@reqtimeout.load                                       
│@setenvif.conf                                         
│@setenvif.load                                         
│@status.conf                                           
│@status.load                                           
│@userdir.conf                                          
│@userdir.load                                          
│@vhost_alias.load   
Уже не знаю, что делать. Помогите знающие люди.

Ответ на: комментарий от Infra_HDC

Этого мало: В журнале ошибок апача при обращении есть такие строки В журнале ошибок апача при обращении есть такие строки

cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/tab_graphs.gif HTTP/1.1" 404 520 "http://cacti.ns.home/" "Mozilla/5.0 (Wi
cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/left_border.gif HTTP/1.1" 404 521 "http://cacti.ns.home/" "Mozilla/5.0 (W
cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] "GET /cacti/images/menu_line.gif HTTP/1.1" 404 519 "http://cacti.ns.home/" "Mozilla/5.0 (Win
Смущает «GET /cacti/images/left_border.gif HTTP/1.1» 404 521 особенно /cacti вначале запроса. Т.к. если в криво открывшимся главном окне кактуса нажать на любую ссылку то ссылаться он будет на
http://cacti.ns.home/cacti/plugins.php
и выдаст 404 Not Found, а не на
http://cacti.ns.home/plugins.php
При прямом обращении на "http://cacti.ns.home/plugins.php" страницу он отдаст, но беp разметки и картинок, т.к. картинки будут ссылаться на
GET /cacti/images/left_border.gif HTTP/1.1" 404 521 "http://cacti.ns.home/plugins.php"

Ничего другого нет. Тут вопрос откуда он подставляет cacti в начало запроса в URL.

При прямом обращении на "http://cacti.ns.home/plugins.php" страницу он отдаст, но без разметки и картинок, т.к. картинки будут ссылаться на

GET /cacti/images/left_border.gif HTTP/1.1" 404 521 "http://cacti.ns.home/plugins.php"

bredis ()
Ответ на: комментарий от bredis

А понял, сорри, не увидел мало логов, а материалу по вопросу много. Может что-то прописано или наоборот не прописано в виртуальном каталоге для имагей? Ну и я бы посмотрел на сайте апача типа «что нового в новой версии» и «переход на новую версию» (сам не смотрел, сорри). Конечно, вероятность мала. А в гугле что-то есть похожее? И вы не покажете кусок лога обновления конкретно пакета апача при обновлении дебиана с Jessie до Stretch? Ну, и классический вопрос: обновлялись по штатной инструкции https://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.ru.html ? Никаких нестандартных хижакей-настроек не делали вы или ваши установщики ПО конкретно для пакета апача? Может какой-то левый пакет поставили, который захакал для всех виртуальный дир? :-)

Infra_HDC ★★★★★ ()

Уже не знаю, что делать.

А что хоть делали, ну кроме тыкания палочкой? Активные изменения какие-то при этом вносили, в конфигурацию например?

Infra_HDC ★★★★★ ()
Ответ на: комментарий от Infra_HDC

Обновлялся по инструкции. Никаких изменений не вносил в jessie. Просто отредактировал cacti.conf и всё работало. После обновления работать перестало.

bredis ()
Ответ на: комментарий от bredis

Победил я эту проблему. Создал отдельный файл с описанием виртуальных хостов с содержимым

<VirtualHost *:80>
    ServerAdmin ******@*******.***
    ServerName cacti.ns.home
    ServerAlias cacti
    DocumentRoot /usr/share/cacti/site
    ErrorLog ${APACHE_LOG_DIR}/cacti-error.log
    CustomLog ${APACHE_LOG_DIR}/cacti-access.log combined
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin ******@*******.***
    ServerName phpmyadmin.ns.home
    ServerAlias phpmyadmin
    DocumentRoot /usr/share/phpmyadmin
    ErrorLog ${APACHE_LOG_DIR}/phpmyadmin-error.log
    CustomLog ${APACHE_LOG_DIR}/phpmyadmin-access.log combined
</VirtualHost>


Нужно идти по пути наименьшего сопротивления. Всём спасибо.
bredis ()
Ответ на: комментарий от Infra_HDC

Как выяснилось решена она была не до конца. Вся проблема была в файле

«/usr/share/cacti/site/include/global.php»

В строке №46

$url_path = "/cacti/";
Это объясняет откуда в логе апача появлялся cacti в начале запроса. «cacti.ns.home:80 192.168.100.10 - - [28/Jun/2017:21:45:57 +0300] „GET /cacti/images/tab_graphs.gif HTTP/1.1“ 404 520 »http://cacti.ns.home/" «Mozilla/5.0 (Wi» Эту строчку я закомментировал и вместо нее написал
$url_path = "";
Теперь всё работает как часы.

bredis ()
Ответ на: комментарий от bredis

Страсти какие. Ну это похлеще, чем «нестандартная конфигурация», о которой я спрашивал.

Infra_HDC ★★★★★ ()
Ответ на: комментарий от Infra_HDC

Откатил. Вернул всё как у меня было до обновления. Спасло редактирование строки $url_path = "";

bredis ()
Ответ на: комментарий от bredis

не совсем по теме, но...

Создал отдельный файл с описанием виртуальных хостов с содержимым

так и надо делать. Не просто же так директория конфигов апача так устроена /etc/apache2/sites-available и sites-enabled. В available создаем для каждого virtual-host-а свой конфиг и потом командуем a2ensite, a2dissite. Это же удобно. Надо поправить настройки сайта какого, отредактировал site.ru.conf и сделал apache2 reload.

samson ★★ ()
Последнее исправление: samson (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.