Վերագործարկեք Apache- ի Ubuntu- ում, RedHat- ում, Gentoo- ում եւ այլ Linux Distros- ում
Եթե դուք հյուրընկալում եք ձեր կայքը բաց կոդով հարթակի վրա, շատ հավանական է, որ այս հարթակը Apache է: Եթե դա այդպես է, եւ դուք հյուրընկալում եք Apache սերվերով, ապա երբ աշխատում եք Apache httpd.conf ֆայլի կամ այլ կոնֆիգուրացիայի ֆայլի (ինչպես նաեւ նոր վիրտուալ սերվեր) ավելացնելով, անհրաժեշտ է վերսկսել Apache- ը, ձեր փոփոխությունները կգործեն: Սա կարող է սարսափելի թվալ, բայց բարեբախտաբար դա շատ հեշտ է անել:
Փաստորեն, կարող եք դա անել մեկ րոպեի ընթացքում (չհաշված այն ժամանակահատվածը, որը կվերցնի այս հոդվածը, քայլ առ քայլ հրահանգներ ստանալու համար):
Սկսել
Վերսկսելու ձեր Linux Apache վեբ սերվերը, լավագույն տարբերակն է init.d հրամանն օգտագործելը: Այս հրամանը հասանելի է Linux- ի բազմաթիվ բաժանմունքների վրա, ներառյալ Red Hat, Ubuntu եւ Gentoo: Ահա թե ինչպես կարող ես դա անել.
- Մուտք գործեք ձեր վեբ սերվերին, օգտագործելով SSH կամ telnet եւ համոզվեք, որ ձեր համակարգը ներառում է init.d հրամանը: Այն սովորաբար հայտնաբերվում է / etc գրացուցակում, հետեւաբար, այն ցուցակում,
ls / etc / i *
- Եթե ձեր սերվերը օգտագործում է init.d, ապա դուք կստանաք նշված ցանկի սկզբնական ֆայլերի ցանկը: Փնտրեք apache կամ apache2 հաջորդ թղթապանակում: Եթե դուք ունեք init.d, բայց չունեք Apache- ի նախնական ֆայլ, գնացեք սույն հոդվածի բաժինը վերնագրով, որը կարդում է «Վերականգնել ձեր սերվերը առանց ինդիտ.դ», հակառակ դեպքում կարող եք շարունակել:
- Եթե դուք ունեք init.d եւ Apache- ի նախնական ֆայլ, ապա կարող եք վերսկսել Apache- ը այս հրահանգով:
/etc/init.d/apache2 վերբեռնել
Հնարավոր է, որ sudo- ն այնուամենայնիվ արմատավոր օգտագործողին պետք է գործի այս հրամանը:
Վերբեռնման տարբերակը
Օգտագործելով վերբեռնման տարբերակը, Apache- ի սերվերի վերագործարկման լավագույն տարբերակն է, քանի որ պահում է սերվերի գործարկումը (գործընթացը չի սպանվում եւ վերագործարկվում է): Փոխարենը, այն պարզապես վերադրում է httpd.conf ֆայլը, որը սովորաբար այն ամենն է, ինչ ցանկանում եք անել այս դեպքում:
Եթե վերբեռնման տարբերակը չի գործում ձեզ համար, ապա կարող եք նաեւ փորձել օգտագործել հետեւյալ հրամանները.
- /etc/init.d/apache2 վերսկսել - այս հրահանգը սպանում է սերվերի գործընթացը եւ վերսկսում է այն
- /etc/init.d/apache2 stop - այս հրամանը սպանում է սերվերի գործընթացը
- /etc/init.d/apache2 սկիզբ - այս հրամանը սկսում է սերվերը (եւ նետում է սխալ հաղորդագրություն, եթե սերվերը արդեն աշխատում է)
Վերագործարկեք ձեր սերվերը `առանց Init.d- ի
Լավ, ուրեմն, որտեղ մենք խնդրեցինք անցնել, եթե ձեր սերվերը չունի init.d: Եթե սա ձեզնից, մի հուսահատվեք, դուք կարող եք վերսկսել ձեր սերվերը: Դուք պարզապես պետք է դա անել ձեռքով հրամանատարությամբ apachectl. Ահա այս սցենարի համար քայլերը.
- Մուտք գործեք ձեր վեբ սերվերի մեքենան, օգտագործելով SSH կամ telnet
- Գործարկել apache կառավարման ծրագիրը:
apachectl նազելի
Հնարավոր է, որ sudo- ն այնուամենայնիվ արմատավոր օգտագործողին պետք է գործի այս հրամանը:
Apachectl զվարճալի հրամանը պատմում է Apache- ին, որ ցանկանում եք սերվերի վերակառուցումը հարգալից կերպով առանց որեւէ բաց կապեր ընդհատելու: Այն ինքնաբերաբար ստուգում է կազմաձեւման ֆայլերը, նախքան վերսկսումը սկսելու համար, համոզվելու համար, որ Apache- ը չի մահանա:
Եթե apachectl- ն նրբագեղ չի վերսկսել ձեր սերվերը, կան մի քանի այլ բաներ, որոնք դուք կարող եք փորձել:
- apachectl վերագործարկումը սերվերի վերագործարկման համար: Եթե սերվերը չի աշխատում, այն սկսվում է: Այս հրամանը նաեւ անցնում է կոնֆիգուրացիայի ստուգում `համոզվելու համար, որ Apache- ը չի վերանա, երբ այն վերսկսվի:
- apachectl- ը դադարեցնում է Apache սերվերի դադարեցումը
- apachectl սկսում է սկսել Apache սերվերը (Apache- ը վազում է սխալ հաղորդագրություն ուղարկելու դեպքում)
- apachectl configtest- ը փորձարկման կոնֆիգուրացիայի ֆայլի շարահյուսության փորձարկման համար:
Ձեր Apache սերվերի վերագործարկման վերաբերյալ խորհուրդներ.
- init.d վերբեռնել եւ apachectl նազելի, այնպես էլ վերաբեռնել կազմաձեւման ֆայլերը եւ gracefully վերագործարկել վեբ սերվերը: Ցանկացած ընթացիկ կապեր թույլատրվում են ավարտել: Սա նախընտրելի մոտեցում է, եւ այն պետք է լինի այն, ինչ նախ փորձեք:
- init.d վերսկսումը եւ apachectl վերագործարկումը վերբեռնում է կազմաձեւման ֆայլերը եւ վերսկսվում: Ցանկացած ընթացիկ կապն անմիջապես դադարում է:
- Եթե սերվերը չի աշխատում, այդ հրամանները կսկսեն գործել:
- Եթե այդ հրամաններից որեւէ մեկը չի աշխատում, ապա պետք է անջատեք Apache- ի սերվերը (կարճ ժամանակով վերցնելով) init.d stop- ի կամ apachectl stop հրամանով, սպասեք առնվազն 10 վայրկյան եւ հետո գործարկել init.d սկիզբը apachectl start
- Եթե դա չի աշխատում, ապա պետք է ստուգեք ձեր կոնֆիգուրացիայի ֆայլերը, որպեսզի համոզվեք, որ դրանց հետ խնդիրներ չկան, վազելով apachectl նազելի