LinuxForum.Fans
Тема

Apache, что случилось?

Автор: medusa 24 сообщений 1810 просмотров
13.06.2019 18:18 · отредактировано #432086

Уважаемые Господа.
Меня постигла настоящая беда(((. Пришлось удалить winetricks. программа удалилась, но что-то удалилось видимо и с apache. дело в том. что я занимаюсь разработкой сайтов. И мне просто жизненно важен данный инструмент. Я попытался зайти в localhost


Не удается получить доступ к сайту Сайт localhost не позволяет установить соединение.

Я решил проверить Apache
[console]$ sudo service apache2 restart
[sudo] пароль для medusa:
Failed to restart apache2.service: Unit apache2.service is masked.[/console]

[console]sudo systemctl unmask apache2
Removed /etc/systemd/system/apache2.service.[/console]

[console]sudo service apache2 restart[/console]

[console]sudo service apache2 status
● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; generated)
Active: active (exited) since Thu 2019-06-13 15:06:07 MSK; 44min ago
Docs: man:systemd-sysv-generator(8)
Process: 1370 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)

июн 13 15:06:07 oleg-PC-O-E-M systemd[1]: Starting LSB: Apache2 web server...
июн 13 15:06:07 oleg-PC-O-E-M systemd[1]: Started LSB: Apache2 web server.[/console]

все вроде хорошо, но при попытке получить версию apache

[console]sudo apache2 -v
sudo: apache2: команда не найдена[/console]

Помогите пожалуйста! Очень нужна помощь, ведь работа просто встала, а моих знаний не хватает.
Добавлено: 13.06.2019 18:18:45

[console]sudo apt install apache2-bin[/console]

После этого

[console]sudo apache2 -v
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2019-04-03T13:22:37
[/console]

Видимо я что-то удалил, а что - не представляю. Доступа к localhost по прежнему нет.(((

14.06.2019 11:40 #432094

medusa, Не самый я спец по линуксам, но не понятно зачем winetricks нужен apache.
К winetricks в генту по крайней мере для гуя требуются zenity или kdialog, а так же для распаковки в вайн просит cabextract и p7zip.
С апачем я вообще не въехал, что там ему надо, но там 100500 модулей, наверное их и покоцало. Посмотрите здесь https://help.ubuntu.ru/manual/apt
Обрратите внимание на aptitude purge. Правда это снесет и все конфиги. Зато скорее всего начнет работать. *DRINK*

14.06.2019 13:58 · отредактировано #432096

перейдите в каталог:

/var/log/apache2

И смотрим error.log или access.log на наличие ошибок.
+ проверяем на каком порту висит служба:

text

sudo  netstat -anp| grep apache
14.06.2019 14:24 · отредактировано #432099
"i2ks" написал:
перейдите в каталог:

Оба файла пустые. Как будто не существует никакого сервера(((.
[console]$ sudo netstat -anp| grep apache
1 ✗ 14:20:43 Пт июн 14
[/console]

14.06.2019 15:00 #432102

А так?

text

dpkg -l| grep apache 
14.06.2019 15:01 #432103

Можно попробовать nginx в связке с php-fpm.
Раз уж апач приказал долго жить...

14.06.2019 19:05 #432104
"i2ks" написал:
А так?

[console]dpkg -l| grep apache [/console]

К сожалению не сработало. однако,

[console]sudo aptitude install apache2[/console]
[console]sudo service apache2 restart[/console]
[console]sudo service apache2 status
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset:
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Fri 2019-06-14 18:32:53 MSK; 12min ago
Main PID: 1205 (apache2)
Tasks: 9 (limit: 4915)
CGroup: /system.slice/apache2.service
├─1205 /usr/sbin/apache2 -k start
├─1260 /usr/sbin/apache2 -k start
├─1261 /usr/sbin/apache2 -k start
├─1262 /usr/sbin/apache2 -k start
├─1264 /usr/sbin/apache2 -k start
├─1265 /usr/sbin/apache2 -k start
├─3874 /usr/sbin/apache2 -k start
├─3879 /usr/sbin/apache2 -k start
└─3880 /usr/sbin/apache2 -k start
[/console]

Дальнейшая проверка показала, что MySQL сервер не пострадал. Однако, потребовалось полностью переустановить PHP и phpMyadmin. Переустановка настроек не затронула, как оказалось. Сейчас все работает, но осталось несколько вопросов:

1. Наличие ошибок отображаемых в терминале при вызове статуса Apache.

Показать

2. Не регулируется время сессии параметра session.gc_maxlifetime. Т.е. по умолчанию - проблем нет (1440), но при попытке увеличить время сессии сразу выползает ошибка, а вернее информация в phpMyadmin

Показать
14.06.2019 20:17 #432105

Вероятно трутся конфиги в рутовых директориях, а хомячковские остаются. Возможно в этом и проблема, но это не точно.) Дебианом сто лет плотно не пользовался, с полгода назад качал 10 дебиан на посмотреть... Гента по-моему легче юзается. :D

14.06.2019 20:30 #432106
shtoom написал:
Дебианом сто лет плотно не пользовался, с полгода назад качал 10 дебиан на посмотреть...

Он выйдет только в июле.
А source-based дистрибутивы — они сильно на любителя. :)

14.06.2019 20:35 #432107

s.xbatob,Из-за того, что тестовый бастер какой-то был, потому и не прижился вновь похоже. я качал его чтобы TDE заценить, Орморф тогда еще не допилил его под Генту. :) В смысле у него-то оно работало, а вот у меня нет. *CRAZY*

19.06.2019 14:13 #432151

"medusa" написал:
1. Наличие ошибок отображаемых в терминале при вызове статуса Apache.
Вспомнил про это, решил объяснить что к чему

Этот статус показывает результат выполнения последней команды, т.е. в даном случае `service`, соответственно к самому apache этот статус отношения не имеет — это раз.
Два: 130 это User aborted. Если выхлоп `service` больше какого-то кол-ва строк (не знаю какого именно), оно гонится через less, и соответственно требует явного указания от юзверя на завершение работы с ним. Правильо выходить через "q", а выход через ^C это не выход, а прерывание выполнения, что и приводит к появлению 130-й ошибки.
Показать
24.06.2019 17:31 · отредактировано #432152
"DiabloPC" написал:
Правильо выходить через "q", а выход через ^C это не выход, а прерывание выполнения, что и приводит к появлению 130-й ошибки.

Спасибо за науку. Это очень важно. Ведь разница между выходом и прерыванием огромна. Да и не правильно это закакнчивать работу прерыванием. Хотя такого варианта, как Вы предлагаете нигде не видел. Спасибо.
Добавлено: 24.06.2019 17:31:32

Уважаемые Господа. вынужден просить вас о помощи снова. Сегодня понял простую вещь - сообщение типа

Показать

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

/etc/php/5.6/apache2/php.ini

text
; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
; http://php.net/session.gc-maxlifetime
session.gc_maxlifetime = 86400

/etc/phpmyadmin/config.inc.php

text
$cfg['LoginCookieValidity'] = 86400;

При таком варианте написания выдается ошибка, как на картинке, но как только я выставляю значение по умолчанию 1440 - ошибка исчезает. Будто система видит какой-то другой файл конфигурации PHP, а не тот который я регулирую. Может возможно существования клона, может я совсем не понимаю того, что происходит. просто у меня впечатление, что все что я делаю - устанавливаю систему и больше ничего. Может имеет смысл всю связку переустановить? Может только PHP? Я просто загнан в угол в прямом смысле, а сдаваться не хочется. Может подскажите дельную мысль. *HELP*
Решил найти файл конфигурации и вот, что вышло:

[console]sudo php -i | grep "Loaded Configuration File"
Loaded Configuration File => /etc/php/5.6/cli/php.ini[/console]

Однако попытка изменить время PHP параметра session.gc_maxlifetime успехом не увенчалось. Вопрос по прежнему открытый.

24.06.2019 18:40 #432197
"medusa" написал:
Однако попытка изменить время PHP параметра session.gc_maxlifetime успехом не увенчалось. Вопрос по прежнему открытый.

Про [console=inline]sudo[/console] не забыли?

24.06.2019 19:28 #432198
"Rizado" написал:
Про sudo не забыли?

Нет, об этом не забываю. Я производил редактирование файлов через Krusader от РУТА. Просто не могу понять, как могло измениться указание на размещение файла конфигурации?. Я проверял - эти файлы отличаются конкретно. А где находится указание на файл из каталога /etc/php/5.6/apache2/php.ini не знаю. нет знаний. И почему /etc/php/5.6/cli/php.ini? Я просто в панике((((

24.06.2019 21:47 #432200

"medusa" написал:
Будто система видит какой-то другой файл конфигурации PHP, а не тот который я регулирую.
Первое что нужно сделать — создать файл php со следующим содержимым:
text
<?php
    phpinfo();
?>

и выполнить его на сервере.

В выхлопе будет всё о текущей конфигурации php, подгруженых файлах и т.д. [url=diablopc.linuxforum.ru/info.php]Вот пример →[/url]

А дальше уже копать на основании полученой инфы

24.06.2019 22:18 #432202

DiabloPC, можно короче:

text
<?php
  phpinfo();

Закрывающие скобки ?> в конце файла, если после них ничего нет, необязательны.

25.06.2019 08:57 #432207
"DiabloPC" написал:
А дальше уже копать на основании полученой инфы
Показать

согласно выводу файл регулировки лежит именно в /etc/php/5.6/apache2/php.ini

Однако запрос на поиск файла конфигурации упрямо выводит другой файл:

[console]sudo php -i | grep "Loaded Configuration File"
[sudo] пароль для medusa:
Loaded Configuration File => /etc/php/5.6/cli/php.ini[/console]

Значит эти файлы конфликтуют? Но почему? Спасибо.

25.06.2019 09:21 #432208

Нет, не конфликтуют.

«/etc/php/5.6/apache2/php.ini» используется при вызове php из apache
«/etc/php/5.6/cli/php.ini» используется при вызове php из консоли, что и происходит при вызове команды ‘php -i‘, собственно на это намекает даже расположение файла: /etc/php/5.6/cli/php.ini. CLI == Command Line Interface.

Да, на php можно писать не только web-приложения и вызывать его можно не только средствами веб-сервера.
В качестве примера можно сделать следующее:
Создаем файл blabla.php
вставляем следующее:

text
#!/usr/bin/env php
<?php
    echo "Hello\n";
    

Даем права на запуск [console=inline]chmod +x blabla.php[/console]

и выполняем
[console=user]./blabla.php[/console]

Что же касается

"medusa" написал:
session.gc_maxlifetime
для начала читаем это https://kocherov.net/nyuansyi-rabotyi-php-session-gc_maxlifetime/ и вот это https://www.php.net/manual/ru/session.configuration.php#ini.session.gc-maxlifetime
25.06.2019 09:27 #432209
text

php -i

это cli, для fpm будет так:

text
php-fpm -i

, для cgi

text
php-cgi -i

>Значит эти файлы конфликтуют?

Это разные конфигурационные файлы.
См вывод phpinfo в нем всё указанно что и где лежит.

25.06.2019 11:51 · отредактировано #432216
"DiabloPC" написал:
для начала читаем это https://kocherov.net/nyuansyi-rabotyi-p … xlifetime/ и вот это https://www.php.net/manual/ru/session.c … axlifetime

Прочитал. увлекательно. Только, как мне это должно помочь? Я ведь объяснил, что редактирую файл ini, а он не редактируется по факту. т.е. изменения вносятся, но система их не видит. Вы извините, но я просто теряю время и уже потерял заработок. Я не жалуюсь - сам решил, но другого способа заработать у меня просто нет, а я уже более месяца живу в долг. Пожалуйста объясните в чем проблема если знаете.((((

Попробовал запустить phpMyadmin^

text
Notice in ./libraries/session.inc.php#158
 session_start(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)

Backtrace

./libraries/session.inc.php#158: session_start() ./libraries/common.inc.php#280: require(./libraries/session.inc.php) ./index.php#13: require_once(./libraries/common.inc.php)

Войдите или зарегистрируйтесь, чтобы ответить.