Ubuntu, RedHat, Gentoo va boshqa Linux distroslarida Apache-ni qayta ishga tushiring
Agar veb-saytingizni ochiq manba platformasida joylashtirsangiz, bu platforma Apache bo'lish ehtimoli yuqori. Agar shunday bo'lsa va siz Apache serveriga ega bo'lsangiz, Apache httpd.conf faylini yoki boshqa konfiguratsiya faylini (yangi virtual host qo'shish kabi) tahrirlash ustida ishlayotganingizda Apacheni qayta ishga tushirishingiz kerak bo'ladi. O'zgartirishlaringiz kuchga kiradi. Bu qo'rqinchli bo'lib tuyulishi mumkin, lekin baxtiyor, bu juda oson.
Darhaqiqat, taxminan bir daqiqada buni amalga oshirishingiz mumkin (qadam ko'rsatmalarga erishish uchun ushbu maqolani o'qish uchun qancha vaqt ketishini hisobga olmaysiz).
Ishni boshlash
Linux Apache veb-serverini qayta ishga tushirish uchun eng yaxshi usul init.d buyrug'ini ishlatishdir. Ushbu buyruq Linux Red Hat, Ubuntu va Gentoo kabi ko'plab tarqatishda mavjud. Buni qanday amalga oshirishingiz mumkin:
- SSH yoki telnet yordamida veb-serveringizga kiring va sistemangiz init.d buyrug'iga ega ekanligiga ishonch hosil qiling. Odatda / etc katalogida topiladi, shuning uchun katalogni keltiring:
ls / etc / i *
- Agar serveringiz init.d dan foydalansa, ushbu ko'rsatilgan papkada boshlash fayllari ro'yxatini olasiz. Keyingi papkadagi apache yoki apache2 ni qidiring. Init.d bo'lsa, lekin Apache boshlash fayli bo'lmasa, ushbu maqolaning bo'limiga "Init.d holda serverni qayta boshlash" degan nom bilan murojaat qiling, aks holda siz davom etishingiz mumkin.
- Init.d va Apache boshlash fayli bo'lsa, Apache'ni ushbu buyruq yordamida qayta ishga tushirishingiz mumkin:
/etc/init.d/apache2 qayta yuklang
Ushbu buyruqni ishlatish uchun root foydalanuvchi sifatida sudo kerak bo'lishi mumkin.
Qayta yuklash opsiyasi
Qayta yuklash opsiyasidan foydalanib, Apache serveringizni qayta ishga tushirishning eng yaxshi usuli - bu server ishlayotganligini saqlab turadi (jarayonlar o'ldirilmaydi va qayta ishga tushirilmaydi). Buning o'rniga, bu faqat httpd.conf faylini qayta yuklaydi, bu odatda bu holatda bajarishni xohlaysizmi.
Qayta yuklash opsiyasi siz uchun ishlamasa, siz buning o'rniga quyidagi buyruqlardan foydalanishga urinib ko'ring:
- /etc/init.d/apache2 qayta ishga tushirish - bu buyruq server jarayonini tugatadi va uni qayta ishga tushiradi
- /etc/init.d/apache2 stop - bu buyruq server jarayonini o'ldiradi
- /etc/init.d/apache2 start - bu buyruq serverni ishga tushiradi (va server allaqachon ishlayotgan bo'lsa xato xabari yuboradi)
Serveringizni Init.d holda qayta ishga tushiring
OK, shuning uchun serverda init.d bo'lmasa, sizni so'rashimiz kerak. Bu siz bo'lsangiz, umidingizni yo'qotmang, serveringizni qayta ishga tushirishingiz mumkin. Apachectl buyrug'i bilan uni qo'lda qilishingiz kerak. Mana bu stsenariy uchun qadamlar:
- SSH yoki telnet yordamida veb-serveringiz mashinangizga kiring
- Apache boshqarish dasturini ishga tushirish:
apachectl graceful
Ushbu buyruqni ishlatish uchun root foydalanuvchi sifatida sudo kerak bo'lishi mumkin.
Apachectl graceful buyrug'i, Apache-ni serverni yoqimli tarzda qayta tiklashni istaganini, ochiq havolani bekor qilmasdan aytadi. Apache'nin o'lmasligini ta'minlash uchun qayta boshlashdan oldin konfiguratsion fayllarni avtomatik ravishda tekshiradi.
Apachectl graceful serveringizni qayta ishga tushirmasa, siz yana bir necha narsalarni sinab ko'rishingiz mumkin.
- Serverni qayta boshlash uchun apachectl qayta yoqing. Server ishlamayotgan bo'lsa, u ishga tushiriladi. Ushbu buyruq, Apache qayta boshlanganida o'lmasligini ta'minlash uchun konfiguratsiya testini ham bajaradi.
- apachectl Apache serverini to'xtatish uchun to'xtaydi
- apachectl Apache serverini ishga tushirishni boshlaydi (Apache ishlayotgan bo'lsa xato xabari yuboradi)
- konfiguratsiya fayllari sintaksisini sinovdan o'tkazish uchun apachectl configtest.
Apache serveringizni qayta ishga tushirish bo'yicha maslahatlar:
- init.d qayta yuklang va apachectl graceful ham konfiguratsiya fayllarini qayta o'rnating va nozik tarzda veb-serverni qayta ishga tushiring. Har qanday joriy ulanishni bajarishga ruxsat etiladi. Bu sizning afzal yo'lingiz va siz avval sinab ko'rishingiz kerak.
- init.d qayta boshlash va apachectl qayta boshlash konfiguratsiya fayllarini qayta yuklaydi va qayta boshlanadi. Har qanday joriy aloqa darhol to'xtatiladi.
- Server ishlamayotgan bo'lsa, ushbu buyruqlar uni ishga tushiradi.
- Ushbu buyruqlarning hech biri ishlamasa, init.d stop yoki apachectl stop buyrug'i bilan Apache serveringizni o'chiring (qisqa vaqt ichida olib tashlang), kamida 10 sekund kutib turing va keyin init.d start start apachectl start
- Agar bu ishlamasa, apachectl graceful ishlaydigan ular bilan muammo yo'qligiga ishonch hosil qilish uchun konfiguratsiya fayllaringizni tekshirishingiz kerak