Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: Astronomy в Jan 08, 2008, 21:04



Титла: Рестарт на apache
Публикувано от: Astronomy в Jan 08, 2008, 21:04
Здравейте,
Използвам Linux Mandriva 2008

След като направих промени в php.ini трябаше да рестартирам Apache, но неуспях, защото този сървър го няма в /etc/init.d/apache2 restart и немога да разбера как да го рестартирам.
Благодаря ако някой ми даде съвет!


Титла: Рестарт на apache
Публикувано от: romeo_ninov в Jan 08, 2008, 21:15
service restart apache
или httpd


Титла: Рестарт на apache
Публикувано от: gat3way в Jan 08, 2008, 21:24
Грубо...


Титла: Рестарт на apache
Публикувано от: Astronomy в Jan 08, 2008, 21:25
Благодаря, но аз съм още начинаещ.
И двете в конзолата като root ли трябва да се изпълнят?
На httpd  ми изкара това:


[root@localhost floyd]# httpd
httpd: Could not reliably determine the server's fully qualified domain name, us                                             ing 127.0.0.1 for ServerName
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs


Титла: Рестарт на apache
Публикувано от: spec1 в Jan 08, 2008, 21:36
Опитай с:
     httpd -k stop
     httpd -k start
  Все пак виж как точно се казва (може да е и  httpd2 , apache ...)
 Не съм сигурен за най-новата Mandriva


Титла: Рестарт на apache
Публикувано от: Astronomy в Jan 08, 2008, 21:41
apache2   e, но пак нищо не става.
bash: apache2: command not found


Титла: Рестарт на apache
Публикувано от: spec1 в Jan 08, 2008, 21:52
От написаното от теб е ясно,че е httpd
Опитай това с  httpd -k stop      ... start


Титла: Рестарт на apache
Публикувано от: romeo_ninov в Jan 08, 2008, 22:42
Цитат (spec1 @ Ян. 08 2008,22:52)
От написаното от теб е ясно,че е httpd
Опитай това с  httpd -k stop      ... start

Това няма да изпълни старт/стоп скрипта на системата, за това се препоръчва:
service restart httpd


Титла: Рестарт на apache
Публикувано от: romeo_ninov в Jan 08, 2008, 22:43
Цитат (gat3way @ Ян. 08 2008,22:24)
Грубо...

Това е грубо решение:
Цитат

Опитай с:
    httpd -k stop
    httpd -k start

Моето е елегантното и съобразено със системата!!!


Титла: Рестарт на apache
Публикувано от: Hapkoc в Jan 08, 2008, 22:48
Ромео, нямам под ръка RH или производна система, но според тук:

http://linux.die.net/man/8/service

би следвало да е:

service httpd restart


Титла: Рестарт на apache
Публикувано от: romeo_ninov в Jan 08, 2008, 23:00
Цитат (Hapkoc @ Ян. 08 2008,23:48)
Ромео, нямам под ръка RH или производна система, но според тук:

http://linux.die.net/man/8/service

би следвало да е:

service httpd restart

Съгласен, грешката е моя, но надявам се поне някой да признае че това е каноничния метод, а не разни щуротии, преложени по-горе


Титла: Рестарт на apache
Публикувано от: neter в Jan 08, 2008, 23:03
Добре де. А файл httpd няма ли в init-а, за да се изпълнява
Примерен код
/etc/init.d/httpd start/stop/restart/т.н.

Отдавна не съм ползвал Mandriva и съм забравил.


Титла: Рестарт на apache
Публикувано от: remotex в Jan 09, 2008, 08:26
Цитат (Astronomy @ Ян. 08 2008,22:25)
[root@localhost floyd]# httpd
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down Unable to open logs

Обик. тази грешка я дава когато някой (друг) процес държи порта (в сл. 80) - може да е и същия процес (при неправилно "убит" httpd от време на време по някой скрипт "увисва"): случвало ми се е ..повече от веднъж. Та тогава обик. се "избива рибата" т.е. на ръка един по един останалите "висящи процеси" на съответния порт:
[root@ns root]# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
xfs 19085 apache 18u IPv4 127053 TCP *:http (LISTEN)
sh 19086 apache 18u IPv4 127053 TCP *:http (LISTEN)
sh 19087 root 18u IPv4 127053 TCP *:http (LISTEN)
su 19088 root 18u IPv4 127053 TCP *:http (LISTEN)
bash 19089 root 18u IPv4 127053 TCP *:http (LISTEN)

[root@ns root]# kill -9 19085 19086
[root@ns root]# lsof -i :80
[root@ns root]# lsof -i :443
[root@ns root]# lsof -i :443


Титла: Рестарт на apache
Публикувано от: remotex в Jan 09, 2008, 08:33
и още нещо:
"I just noted that I've been using "service httpd restart" to restart
Apache and when I tried "apachectl restart" it works fine so ostensibly
this is a Fedora issue."
Защото (и дано скоро го оправят):
/etc/init.d/httpd relies on a static reference to the httpd.pid and I
had moved mine into another directory in httpd.conf. Seems to be time
they derive that from the httpd.conf since it's not guaranteed to be in
a static location and this is a VERY non-obvious bug to hunt out.

 - никога не/рядко се доверявайте на Федора/Мандрива и пр. Дистро специф. "простотии" - според авторите на съответния софтуер правилният метод за рестарт е (и винаги е бил) apachectl restart
:-)
за повече инфо Fedora7->8 Specific:
http://groups.google.com/group....4a02102


Титла: Рестарт на apache
Публикувано от: spec1 в Jan 09, 2008, 08:41
Ще си позволя да не се съглася с romeo_ninov
 Описаният начин май работи само за Mandriva (и евентуално
 Fedora и SuSE ,но е малко вероятно ). Различните дистрибуции
стартират сървърите с различни команди, да не говорим, че
важни конфигурационни файлове, както и скриптове имат
различно местоположение, пък и понякога различни имена !
   Пък и не е добре да се объркват начинаещите потребители на
Linux, по-добре да се посочват команди, за които ще е много
по-вероятно да проработят,независимо от дистрибуцията.


Титла: Рестарт на apache
Публикувано от: romeo_ninov в Jan 09, 2008, 09:29
Цитат (spec1 @ Ян. 09 2008,09:41)
Пък и не е добре да се объркват начинаещите потребители на
Linux, по-добре да се посочват команди, за които ще е много
по-вероятно да проработят,независимо от дистрибуцията.

Това според мен не е разумно, защото старт/стоп скриптовете са направени с цел. Ако искаме само да пробваме нещо - става по директния метод, особено ако имаме опит и можем да се оправим при евентувален проблем. Стартирането по каноничния метод е винаги за препоръчване, защото така го прави самата операционна система и покрай стартирането на демона се грижи и за други неща, като например да запише PID-a му нейде, да провери дали не е стартиран вече и т.н.
Това с особена сила важи за комерсиални дистрибуции като RHEL, SuSE, Mandriva


Титла: Рестарт на apache
Публикувано от: Lord Bad в Jan 09, 2008, 13:17
Не че нещо, но се съмнявам че в Мандрива няма apache2ctl иструмента. С него цивилизован рестарт се прави така:
Цитат
apache2ctl graceful


Титла: Рестарт на apache
Публикувано от: gat3way в Jan 09, 2008, 13:55
Мдам, и инитскрипта го подържа, т.е service httpd graceful.

Има и configtest, има и reload, който прави всъщност configtest и ако конфигурацията е наред, прави graceful рестарт.