Apache-ni sozlash: bosqichma-bosqich ko'rsatmalar. Apache konfiguratsiya fayli

httpd.conf - Apache server konfiguratsiyasi

Apache direktivalarni oddiy matn konfiguratsiya fayllariga joylashtirish orqali sozlangan. Apache serverining asosiy konfiguratsiya fayli - httpd.conf.
Include direktivasi yordamida boshqa konfiguratsiya fayllarini qo'shish mumkin. Har qanday direktivani ushbu konfiguratsiya fayllaridan birida o'rnatish mumkin.
Apache 2.4 quyi katalogdagi fayllar bilan sozlangan (standart) - konf(C:\Program Files\Apache Software Foundation\Apache2.4\conf\). Bular OS Unix konfiguratsiyasi bilan bir xil fayllar, biroq bir nechta Windows-ga xos ko'rsatmalar mavjud.

Apache HTTP 2.4 serverining asosiy konfiguratsiya fayli odatda shunday nomlanadi - httpd.conf.

Unda veb-server, virtual serverlar va barcha Apache 2.4 dasturiy modullarining ishlashini boshqaruvchi direktivalar va parametrlar mavjud. . Apache modulli serverdir. Bu asosiy serverga faqat eng asosiy funksiyalar kiritilganligini bildiradi. Dinamik yuklangan modullar yordamida mavjud funktsiyalarni kengaytirish. Konfiguratsiya fayllari har bir satrda bitta direktivani o'z ichiga oladi. Teskari chiziq “\” direktivaning keyingi satrda davom etishini bildirish uchun satrdagi oxirgi belgi sifatida ishlatilishi mumkin. Teskari chiziq va chiziq oxiri o'rtasida boshqa belgilar yoki bo'shliqlar bo'lmasligi kerak. Konfiguratsiya fayllaridagi direktivalar katta-kichik harflarga sezgir emas, lekin direktiv argumentlar ko'pincha katta-kichik harflarga sezgir. "#" belgisi bilan boshlangan satrlar izoh hisoblanadi va e'tiborga olinmaydi. Sharhlarni konfiguratsiya direktivasidan keyin qatorga kiritish mumkin emas. Direktiv oldidagi bo'sh chiziqlar va bo'shliqlar e'tiborga olinmaydi.

Direktiv Apache serveri xatti-harakatlarining bir yoki bir nechta aspektlarini boshqaradigan konfiguratsiya buyrug'idir.
Asosiy konfiguratsiya fayllarida joylashgan ko'rsatmalar butun serverga qo'llaniladi .

Konfiguratsiya fayllarini sintaksis xatolari uchun tekshirish uchun buyruqdan foydalaning httpd.exe -t.

Apache 2.4 ni o'rnatishda quyidagilar kiritildi:

Tarmoq domenida (tarmoq domeni) - server-apache24.ru
Server nomida - www.server-apache24.ru
Administratorning elektron pochta manzilida (Administratorning pochta manzili) - [elektron pochta himoyalangan]

Demak, server-apache24.ru- Apache serverining asosiy saytining nomi bo'ladi.

Asosiy Apache server sayti faylda tuzilgan - httpd.conf.

Apache server konfiguratsiya fayliga o'zgartirishlar kiritish - httpd.conf

Apache serverining asosiy saytiga domen nomi bilan kirish uchun - server-apache24.ru, diskda katalog yaratish - C:\server-apache24.ru

server-apache24.ru

  • C:\server-apache24.ru
    • jurnallar
      • kirish jurnali
      • xato jurnali
    • www
      • index.html

server-apache24.ru katalogi

Diskning ildizida C: katalog yaratish kerak server-apache24.ru
Unda albatta papkalar bo'lishi kerak:
jurnallar bo'sh fayllar bilan kirish jurnali va xato jurnali
va
www fayl bilan index.html

httpd.conf faylida qatorlarni ko'ring -
209 Server admin [elektron pochta himoyalangan]
218 ServerName www.server-apache24.ru:80
243 DocumentRoot "C:/server-apache24.ru/www"
245

httpd.conf - Apache 2.4 server konfiguratsiyasi

httpd.conf.
Asosiy konfiguratsiya fayli direktivalari butun serverga qo'llaniladi

Qizil rang bilan belgilanganlardan tashqari barcha yozuvlar sharhlanishi kerak. Belgi bilan boshlanadigan qatorlar "#" sharhlardir.

# # Bu Apache HTTP serverining asosiy konfiguratsiya fayli. Unda serverga ko'rsatmalar beradigan # konfiguratsiya direktivalari mavjud. # Batafsil ma'lumot uchun qarang. # Xususan, har bir konfiguratsiya direktivasi muhokamasi uchun # # ga qarang. # # Bu yerdagi ko'rsatmalarni # nima qilishini tushunmasdan o'qimang. Ular bu yerda faqat maslahatlar yoki eslatmalar sifatida. Agar ishonchingiz komil boʻlmasa, # onlayn hujjatlar bilan maslahatlashing. Siz ogohlantirildingiz. # # Konfiguratsiya va logfayl nomlari: Agar # serverning # boshqaruv fayllari uchun siz koʻrsatgan fayl nomlari " bilan boshlansa. /" (yoki Win32 uchun "drive:/"), # server o'sha aniq yo'ldan foydalanadi. Agar fayl nomlari # "/" bilan * boshlanmasa*, ServerRoot qiymatining oldiga qo'yiladi -- shuning uchun ServerRoot "/usr/local/apache2" ga o'rnatilgan "logs/access_log" # # server tomonidan "" deb talqin qilinadi. /usr/local/apache2/logs/access_log", "/logs/access_log" # esa "/logs/access_log" deb talqin qilinadi. # # DIQQAT: Fayl nomlari koʻrsatilgan boʻlsa, teskari chiziq oʻrniga # toʻgʻridan-toʻgʻri chiziqli chiziqdan foydalanishingiz kerak (masalan, “c:\apache” oʻrniga “c:/apache”). # Agar haydovchi harfi o'tkazib yuborilsa, sukut bo'yicha httpd.exe joylashgan disk # ishlatiladi. Chalkashmaslik uchun har doim mutlaq yo'llarda # aniq haydovchi harfini taqdim etish tavsiya etiladi. # # ServerRoot: Serverning # konfiguratsiyasi, xatosi va jurnal fayllari saqlanadigan katalog daraxtining tepasi. # # Katalog yoʻlining oxiriga qiya chiziq qoʻshmang. Agar # ServerRoot ni boʻlmagan joyga koʻrsatsangiz. -mahalliy disk, agar faylga asoslangan mutexlar ishlatilsa, # Mutex direktivasida mahalliy diskni belgilaganingizga ishonch hosil qiling ServerRoot "C:/Program Files/Apache Software Foundation/Apache2.4" # # Mutex: Muteks mexanizmi va mutex fayl katalogi # alohida mutekslar uchun yoki global standart sozlamalarni o'zgartiring # # Mutekslar faylga asoslangan bo'lsa va birlamchi # mutex fayl katalogi mahalliy diskda bo'lmasa yoki boshqa # uchun mos bo'lmasa, izohni olib tashlang va katalogni o'zgartiring standart o'rniga portlar. Apache-ning barcha bog'langan IP manzillarida xiralashishiga yo'l qo'ymaslik uchun # quyida ko'rsatilganidek. # #Tinglang 12.34.56.78:80 Tinglang 80 # # Dynamic Shared Object (DSO) Support # # DSO sifatida qurilgan modul funksiyasidan foydalanish uchun # ushbu joyga mos ʻLoadModule” qatorlarini joylashtirishingiz kerak. shuning uchun undagi # direktivalar ularni ishlatishdan oldin mavjud. # Statik kompilyatsiya qilingan modullarni (`httpd -l" tomonidan sanab o'tilganlar) bu yerga # yuklash shart emas. # # Misol: # LoadModule foo_module modules/mod_foo.so # LoadModule access_compat_module modules/mod_access_compat.so LoadModule modules. LoadModule alias_module modul / mod_alias.so LoadModule allowmethods_module modullar / mod_allowmethods.so LoadModule asis_module modullar / mod_asis.so LoadModule auth_basic_module modullar / mod_auth_basic.so shunday #LoadModule authn_dbd_module modullar / mod_authn_dbd.so #LoadModule authn_dbm_module modullar / mod_authn_dbm.so LoadModule authn_file_module modullar / mod_authn_file .so #LoadModule authn_socache_module modullari / mod_authn_socache.so #LoadModule authnz_ldap_module modullari / mod_authnz_ldap.so LoadModule authz_core_module modullari / mod_authz_core_module modullari / mod_authz_core.so #LoadModule module dules / mod_authz_dbd.so #LoadModule authz_dbm_module modullar / mod_authz_dbm.so LoadModule authz_groupfile_module modullar / mod_authz_groupfile.so LoadModule authz_host_module modullar / mod_authz_host.so #LoadModule authz_owner_module modullar / mod_authz_owner.so LoadModule authz_user_module modullar / mod_authz_user.so LoadModule autoindex_module modullar / mod_autoindex.so # LoadModule buffer_module modul / mod_buffer.so #LoadModule cache_module modullar / mod_cache.so #LoadModule cache_disk_module modullar / mod_cache_disk.so #LoadModule cern_meta_module modullar / mod_cern_meta.so LoadModule cgi_module modullar / mod_cgi.so #LoadModule charset_lite_module modullar / mod_charset_lite.so #LoadModule data_module / mod_data.so #LoadModule dav_module modules/mod_dav.so #LoadModule dav_fs_module modules/mod_dav_fs.so #LoadModule dav_lock_module modules/mod_dav_lock.so #LoadModule dbd_module modules/mod_module/de_module/de_module #LoadModule/de_module/de_module. modules/mod_dir.so shunday #LoadModule d umpio_module modules/mod_dumpio.so LoadModule env_module modules/mod_env.so. mod_headers.so #LoadModule heartbeat_module modules/mod_heartbeat.so #LoadModule heartmonitor_module modules/mod_heartmonitor.so. isapi_module modul / mod_isapi.so #LoadModule lbmethod_bybusyness_module modullar / mod_lbmethod_bybusyness.so #LoadModule lbmethod_byrequests_module modullar / mod_lbmethod_byrequests.so #LoadModule lbmethod_bytraffic_module modullar / mod_lbmethod_bytraffic.so #LoadModule lbmethod.soldheartbeat_module_lo modullar / mod_lbmethod_moduleLoad modullar / mod_ldap.so #LoadModule logio_module modullar / mod_logio.so LoadModule log_config_module modullar / mod_log_config.so #LoadModule log_debug_module modullar / mod_log_debug.so #LoadModule log_forensic_module modullar / mod_log_forensic.so #LoadModule lua_module modullar / mod_lua.so LoadModule mime_module modul / mod_mime. Bas, #LoadModule mime_magic_module modullar / mod_mime_magic.so LoadModule negotiation_module modullar / mod_negotiation.so #LoadModule proxy_module modullar / mod_proxy.so #LoadModule proxy_ajp_module modullar / mod_proxy_ajp.so #LoadModule proxy_balancer_module modullar / mod_proxy_balancer.so #LoadLoadModule proxy_connect_module_ modules.mod_oxyModule_ modullar / mod_oxyModule_modules proxy_express_module modules/mod_proxy_express.so #LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so #LoadModule proxy_html_module modules/httphttphttphttp://LoadModule proksi_html_module modules/mod_proxy_fcgi_module modules/mod_proxy_fcgi_module modules/mod_proxy_fcgi_module #LoadModule proksi_proxy_proksi_proxy_proksi_proksi_proksi_proxy_proxy_proxy_module_so #LoadModule #LoadModule ratelimit_module modules/mod_ratelimit.so #LoadModule reflector_module modules/mod_reflector.so #LoadModule remoteip_module modules/mod_remoteip.so #LoadModule request_module modules/mod_request.so #LoadModule_module modules/mod_request.so #LoadModule_module_modules/mod_timerewso #LoadModule_module/modulleqri #LoadModule_module/modulleqri sed_module modul / mod_sed.so #LoadModule session_module modullar / mod_session.so #LoadModule session_cookie_module modullar / mod_session_cookie.so #LoadModule session_crypto_module modullar / mod_session_crypto.so #LoadModule majlisi slot_dbd_module modullar / mod_session_dbd.so LoadModule setenvif_module modules_mod_setenvif.so #LoadModule setenvif_module modullar / mod_setenvif moduli .Bas #LoadModule setenvif_module modullar / mod_setenvif.so #LoadModule mod_slotmem_plain.so #LoadModule slotmem_shm_module modullar / mod_slotmem_shm.so #LoadModule socache_dbm_module modullar / mod_socache_dbm.so #LoadModule socache_memcache_module modullar / mod_socache_memcache.so #LoadModule socache_shmcb_module modullar / mod_socache # _shmLocb.sopel [elektron pochta himoyalangan]#ServerAdmin [elektron pochta himoyalangan] # # ServerName server o'zini identifikatsiyalash uchun foydalanadigan nom va portni beradi. # Bu ko'pincha avtomatik tarzda aniqlanishi mumkin, lekin ishga tushirish paytida muammolarni oldini olish uchun uni # aniq belgilashingizni tavsiya qilamiz. # # Agar xostingizda roʻyxatdan oʻtgan DNS nomi boʻlmasa, uning IP manzilini shu yerga kiriting # ServerName www.server-apache24.ru:80 # # Serveringizning butun fayl tizimiga kirishni rad eting. Quyidagi # bloklardagi veb-kontent kataloglariga kirishga # aniq ruxsat berishingiz kerak. # AllowOverride none Hammasini rad etishni talab qiling # # Shuni yodda tutingki, bundan buyon # alohida xususiyatni yoqishga alohida ruxsat berishingiz kerak - shuning uchun agar biror narsa # kutganingizdek ishlamayotgan bo'lsa, uni # quyida maxsus # yoqilganligiga ishonch hosil qiling. # # DocumentRoot: # hujjatingizga xizmat koʻrsatadigan katalog. Odatiy boʻlib, barcha soʻrovlar ushbu katalogdan olinadi, lekin # ramziy havolalar va taxalluslar boshqa joylarga ishora qilish uchun ishlatilishi mumkin. # # DocumentRoot "C:/Program" Files/Apache Software Foundation/Apache2.4/htdocs" DocumentRoot edi "C:/server-apache24.ru/www" # edi # # Options direktivasi uchun mumkin bo'lgan qiymatlar: "Yo'q", "Hammasi", # yoki boshqa kombinatsiyasi : # Indekslar FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViewsni o'z ichiga oladi # # E'tibor bering, "MultiViews" * aniq* nomlanishi kerak --- "Options All" # buni sizga bermaydi. # # Options direktivasi ham murakkab, ham muhim. Qo'shimcha ma'lumot uchun # //httpd.apache.org/docs/2.4/mod/core.html#options # ga qarang. # # Variantlar indekslari FollowSymLinks edi Variantlar Indekslar FollowSymLinksni o'z ichiga oladi SymLinksifOwnerMatch ExecCGI MultiViews # # AllowOverride .htaccess fayllariga qanday ko'rsatmalar joylashtirilishini nazorat qiladi. # Bu "Hammasi", "Yo'q" yoki kalit so'zlarning istalgan kombinatsiyasi bo'lishi mumkin: # AllowOverride FileInfo AuthConfig Limit # # AllowOverride None was AllowOverride All # # Ushbu serverdan biror narsa olishi mumkin bo'lgan boshqaruv elementlari. # Barcha berilgan AddHandler server tomonidan tahlil qilingan talab .shtml .shtm .html .htm # # DirectoryIndex: agar # katalog so'ralganda Apache xizmat ko'rsatadigan faylni o'rnatadi. # DirectoryIndex index.html # # Quyidagi qatorlar .htaccess va .htpasswd fayllarini # veb-mijozlar tomonidan ko'rilishining oldini oladi. # Barcha rad etilganlarni talab qilish # # ErrorLog: Xatolar jurnali faylining joylashuvi. # Agar # konteyner ichida ErrorLog direktivasini belgilamasangiz, ushbu virtual xostga tegishli xato xabarlari # shu yerda qayd qilinadi. Agar siz # konteyner uchun xato jurnali faylini *ta'riflasangiz, xost xatolari bu yerda emas, o'sha yerda qayd qilinadi. # # ErrorLog "logs/error.log" ErrorLog edi c:/server-apache24.ru/logs/error.log # # LogLevel: error_logga kiritilgan xabarlar sonini nazorat qilish. # Mumkin bo'lgan qiymatlarga quyidagilar kiradi: disk raskadrovka, ma'lumot, ogohlantirish, ogohlantirish, xato, tanqid, # ogohlantirish, favqulodda. # LogLevel warn # # Quyidagi direktivalar CustomLog direktivasi bilan foydalanish uchun ba'zi format taxalluslarini belgilaydi (pastga qarang). # LogFormat "%h %l %u %t \"%r\" %>s %b \"%(Referer)i\" \"%(User-Agent)i\"" birlashtirilgan LogFormat "%h %l %u %t \"%r\" %>s %b" umumiy # %I va %O LogFormat "%h %l %u %t \"%r\" %> foydalanish uchun mod_logio.c-ni yoqishingiz kerak. s %b \"%(Referer)i\" \"%(User-Agent)i\" %I %O" combinedio # # Kirish jurnali faylining joylashuvi va formati (Common Logfile Format). # Agar # konteyner ichida hech qanday kirish jurnali faylini belgilamasangiz, ular shu yerda qayd qilinadi. Aksincha, agar siz har bir kirish uchun logfayllarni # belgilasangiz, # tranzaktsiyalar u yerda # tizimga kiritiladi va bu faylda * emas*. # # CustomLog "logs/access.log" umumiy bo'lgan CustomLog c:/server-apache24.ru/logs/access.log umumiy edi # # Agar siz kirish, agent va referer ma'lumotlariga ega bo'lgan logfaylni afzal ko'rsangiz # (Birlashtirilgan jurnal fayli formati) siz quyidagi direktivadan foydalanishi mumkin. # #CustomLog "logs/access.log" birlashtirilgan # # Qayta yo'naltirish: Mijozlarga serveringiz nomlar maydonida ilgari # mavjud bo'lgan, lekin endi yo'q bo'lgan hujjatlar haqida xabar berish imkonini beradi. Mijoz # hujjat uchun yangi so'rov yuboradi. uning yangi joyida # Misol: # Doimiy /foo //www.server-apache24.ru/barni qayta yo'naltirish # # Taxallus: veb-yo'llarni fayl tizimi yo'llariga ko'rsatadi va # DocumentRoot ostida yashamaydigan kontentga kirish uchun ishlatiladi. Misol: # Taxallus /webpath /full/fayl tizimi/yo'l # # Agar siz /veb-yo'lda keyingi / qo'shsangiz, server # uning URL manzilida bo'lishini talab qiladi. # fayl tizimi yo'liga.# # ScriptAlias: Bu boshqaruv elementlari kataloglar server skriptlarini o'z ichiga oladi.# ScriptAliases aslida taxalluslar bilan bir xil, faqat maqsadli katalogdagi # hujjat ilova sifatida ko'rib chiqiladi va # mijozga yuborilgan hujjatlar sifatida emas, balki so'ralganda # server tomonidan boshqariladi. "/" ortidagi ScriptAlias ​​# direktivasiga taxallusga nisbatan qo'llaniladi. # # ScriptAlias /cgi-bin/ "C:/Program Files/Apache Software Foundation/Apache2.4/cgi-bin/" ScriptAlias  /cgi-bin/ "C:/server-apache24.ru/cgi edi" -bin/" # ScriptSock: Tarmoqli serverlarda mod_cgid CGI daemoni bilan bog'lanish uchun foydalaniladigan UNIX # soketiga yo'lni belgilang. # #Scriptsock cgisock # # "C:/Program Files/Apache Software Foundation/Apache2.4/cgi-bin" sozlangan bo'lsa, ScriptAliased # CGI katalogingiz mavjud bo'lgan narsaga o'zgartirilishi kerak. # # AllowOverride None Options Yo'q Barcha ruxsat etilganlarni talab qiladi # # TypesConfig # fayl nomi kengaytmasidan MIME turiga o'tish ro'yxatini o'z ichiga olgan faylga ishora qiladi. # TypesConfig conf/mime.types # # AddType maxsus fayl turlari uchun TypesConfig da ko'rsatilgan # MIME konfiguratsiya fayliga qo'shish yoki uni bekor qilish imkonini beradi. # #AddType ilovasi/x-gzip .tgz # # AddEncoding ma'lum brauzerlar # ma'lumotni tezda ochishga imkon beradi. Eslatma: Barcha brauzerlar buni qo'llab-quvvatlamaydi. # #AddEncoding x-compress .Z #AddEncoding x-gzip .gz .tgz # # Agar yuqoridagi AddEncoding direktivalari izohlangan bo'lsa, siz # ehtimol media turlarini ko'rsatish uchun ushbu kengaytmalarni belgilashingiz kerak: # AddType application/x-compress . Z AddType ilovasi/x-gzip .gz .tgz AddType ilovasi/x-httpd-php .php # # AddHandler maʼlum fayl kengaytmalarini “ishlab chiquvchilar” bilan taqqoslash imkonini beradi: # fayl turiga bogʻliq boʻlmagan amallar. Ular # serverga oʻrnatilishi yoki Action direktivasi bilan qoʻshilishi mumkin (pastga qarang) # # CGI skriptlarini ScriptAliased kataloglaridan tashqarida ishlatish uchun: # (Shuningdek, "Options" direktivasiga "ExecCGI" qoʻshishingiz kerak boʻladi.) # #AddHandler cgi-script .cgi AddHandler cgi-script .cgi .pl # Turi xaritalari uchun (kelishilgan manbalar): #AddHandler type-map var # # Filtrlar kontentni mijozga yuborishdan oldin qayta ishlash imkonini beradi. # # Server tomoni o'z ichiga (SSI) uchun .shtml fayllarni tahlil qilish uchun: # (Shuningdek, siz "Tanlovlar" direktivasiga "O'z ichiga oladi" ni qo'shishingiz kerak bo'ladi.) # AddType text/html .shtml AddOutputFilter CHIQADI .shtml # # Mod_mime_magic moduli serverga fayl turini aniqlash uchun uning # tarkibidagi turli maslahatlardan foydalanish imkonini beradi. MIMEMagicFile # direktivasi modulga maslahat ta'riflari joylashgan joyni bildiradi. # #MIMEMagicFile conf/magic # # Sozlanishi mumkin bo'lgan xatolik javoblari uchta xilda bo'ladi: # 1) oddiy matn 2) mahalliy qayta yo'naltirishlar 3) tashqi yo'naltirishlar # # Ba'zi misollar: #ErrorDocument 500 "Server buzilib ketdi." #ErrorDocument 404 /missing.html #ErrorDocument 404 "/cgi-bin/missing_handler.pl" #ErrorDocument 402 //www.server-apache24.ru/subscription_info.html ErrorDocument 404 C:/server-apache/www/24.ruer .html ErrorDocument 500 C:/server-apache24.ru/www/500error.html # # MaxRanges: So'rovdagi maksimal diapazonlar soni # butun resursni yoki "default", " maxsus # qiymatlaridan birini qaytarishdan oldin hech" yoki "cheksiz". # Standart sozlama 200 diapazonni qabul qilishdir. #MaxRanges cheksiz # # EnableMMAP va EnableSendfile: Uni qo'llab-quvvatlaydigan tizimlarda # ta faylni yetkazib berish uchun # xotira xaritalash yoki sendfile tizimi chaqiruvidan foydalanish mumkin. Bu odatda server ish faoliyatini yaxshilaydi, lekin tarmoqqa oʻrnatilgan # fayl tizimidan xizmat koʻrsatishda yoki tizimingizda ushbu funksiyalar # qoʻllab-quvvatlanmagan boʻlsa # oʻchirib qoʻyilishi kerak. # Standart sozlamalar: EnableMMAP yoqilgan, EnableSendfile oʻchirilgan # #EnableMMAP oʻchirilgan #EnableSendfile yoqilgan # Qoʻshimcha konfiguratsiya # # conf/extra/ katalogidagi konfiguratsiya fayllari # qoʻshimcha funksiyalar qoʻshish yoki serverning standart konfiguratsiyasini oʻzgartirish uchun kiritilishi mumkin, yoki siz shunchaki ularning mazmunini shu yerga nusxalashingiz va # kerak bo'lganda o'zgartirishingiz mumkin. # Server havzasini boshqarish (MPMga xos) #Conf/extra/httpd-mpm.confni o'z ichiga oladi # Ko'p tilli xato xabarlari Conf/extra/httpd-multilang-errordoc.confni qo'shing # Chiroyli katalog ro'yxatlari conf/extra/httpd-autoindexni o'z ichiga oladi .conf # Til sozlamalari Include conf/extra/httpd-languages.conf # Foydalanuvchining uy kataloglari Include conf/extra/httpd-userdir.conf # So'rovlar va konfiguratsiyalar haqida real vaqtda ma'lumot #Include conf/extra/httpd-info.conf # Virtual xostlar o'z ichiga conf/extra/httpd-vhosts.conf # Apache HTTP server qo'llanmasiga mahalliy ruxsat #Include conf/extra/httpd-manual.conf # Tarqalgan mualliflik va versiyalar (WebDAV) #Include conf/extra/httpd-dav. conf # Har xil standart sozlamalar conf/extra/httpd-default.conf kiradi # HTML4/XHTML1 tushunish uchun mod_proxy_html sozlang. conf/extra/proxy-html.conf kiriting # Xavfsiz (SSL/TLS) ulanishlar # Conf/extra/httpd-sslni o'z ichiga oladi .conf # # Eslatma: /dev/tasodifiy ekvivalenti # bo'lmagan platformalarda SSL holda # ni qo'llab-quvvatlash uchun quyidagilar bo'lishi kerak. statik tarzda tuzilgan mod_ssl. # SSLRandomSeed ishga tushirish o'rnatilgan SSLRandomSeed ulanish o'rnatilgan # # DNT dan noto'g'ri foydalanish orqali ochiq standartlarni ataylab # buzgan foydalanuvchi agentlari bilan ishlash uchun quyidagi izohni bekor qiling (DNT *oxirgi foydalanuvchining o'ziga xos tanlovi bo'lishi kerak) # # #BrowserMatch "MSIE 10.0;" bad_DNT # # #RequestHeader sozlanmagan DNT env=bad_DNT #


O'zgarishlar .
Jamoa - httpd.exe -k qayta ishga tushiring, Apache tomonidan bajarilgan har qanday operatsiyani tugatishga imkon beradi va Apacheni konfiguratsiya faylini qayta o'qishga majbur qiladi.


Apache serverini o'rnatish bilan bog'liq muammolarni bartaraf etish

Apache Apache Service Monitor deb nomlangan yordamchi dastur bilan birga keladi. Uning yordamida siz tarmoqdagi istalgan kompyuterda o'rnatilgan barcha Apache xizmatlarining holatini ko'rishingiz va boshqarishingiz mumkin.

Apache 2.4 ni qayta ishga tushiring

Chunki o'zgarishlar asosiy konfiguratsiya fayllarida faqat Apache serverini ishga tushirganingizda yoki qayta ishga tushirganingizda kuchga kiradi,
serverni qayta ishga tushirishingiz kerak.

ApacheMonitor

ApacheMonitor belgisini tugmani bosish orqali ko'rish mumkin - yashirin piktogrammalarni ko'rsatish

Belgini ikki marta chap tugmasini bosing Apache xizmati monitori.

Tugmani bosish orqali Apache serverini qayta ishga tushirishingiz mumkin Qayta ishga tushirish
Apache Service Monitor oynasida.
Yoki - STOP undan keyin - Boshlash.

Agar siz faqat httpd.conf fayliga o'zgartirish kiritgan bo'lsangiz,

keyin brauzerning manzil satriga yozib - localhost yoki - 127.0.0.1 ,
sahifani ko'rasiz - Xato 403.

Kirish taqiqlangan!

Sizda soʻralgan katalogga kirish uchun ruxsat yoʻq. Indeks hujjati yoʻq yoki katalog oʻqishdan himoyalangan.
Agar buni server xatosi deb hisoblasangiz, veb-masterga murojaat qiling.

Xato 403

127.0.0.1
Apache/2.4.4 (Win64)

Ruxsat berilmadi!

Sizda soʻralgan katalogga kirish ruxsatingiz yoʻq. Indeks hujjati yo'q yoki katalog o'qishdan himoyalangan.
Agar buni server xatosi deb hisoblasangiz, veb-masterga murojaat qiling.

Xato 403

Buyruqlar qatoriga administrator huquqlari bilan kiring - Administrator - buyruq satri
va kiriting:
"C:\Program Files\Apache Software Foundation\Apache2.4\bin\httpd.exe" 2> C:\errapache.txt

Microsoft Windows (c) 2016 Microsoft korporatsiyasi. Barcha huquqlar himoyalangan. C:\Windows\system32> "C:\Program Files\Apache Software Foundation\Apache2.4\bin\httpd.exe" 2> C:\errapache.txt C: \ Windows \ system32>

Diskda C:/ fayl yaratiladi errapache.txt


AH00112: Ogohlantirish: DocumentRoot mavjud emas AH00112: Ogohlantirish: DocumentRoot mavjud emas (OS 10048) Odatda, rozetka manzilidan (protokol/tarmoq manzili/port) faqat bir marta foydalanishga ruxsat beriladi. : AH00072: make_sock: [::]:80 manziliga ulanib boʻlmadi (OS 10048) Odatda rozetka manzilidan (protokol/tarmoq manzili/port) faqat bir marta foydalanishga ruxsat beriladi. : AH00072: make_sock: 0.0.0.0:80 manziliga ulanib boʻlmadi AH00451: tinglash rozetkalari mavjud emas, oʻchirilmoqda AH00015: Jurnallarni ochib boʻlmadi

AH00112: Ogohlantirish:
C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host.server-apache24.ru
C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host2.server-apache24.ru
Ular mavjud emas (mavjud emas).

Lekin asosiy narsa OS xatolar 10048:

[::]:80 manziliga bog‘lanib bo‘lmadi (manzilga bog‘lanib bo‘lmadi [::]:80)
0.0.0.0:80 manziliga bog‘lanib bo‘lmadi (0.0.0.0:80 manziliga ulanib bo‘lmadi)

Buyruq satrini kiriting va kiriting:
netstat -aon

Administrator: Buyruqlar qatori

Microsoft Windows (c) 2016 Microsoft korporatsiyasi. Barcha huquqlar himoyalangan. C:\Windows\system32> netstat -aon Faol ulanishlar Nomi Mahalliy manzil Tashqi manzil Holat PID TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1612 TCP [::]:80 [::]:0 LISTENING 1612 TCP 127.0.0.1:49693 127.0.0.1:49693 127.0.1:49693 127.0409. TCP 127.0.0.1:49694 127.0.0.1:49693 TURQILGAN 5612 TCP 127.0.0.1:51341 0.0.0.0:0 TINGLASH 3920 TCP 127.0.0.0.1:49694 Tinglash: TCP 127.0.0.0.1:4969. Tinglash 192.1668.0.100:51330:226.138.25:443 192.168.0.100:40:48:5212.0.100:48:52168.0.100:518.212.2.100:5312.2.11.101.112.13: 443 end_wit 3712 TCP 192.168.0.100:53161 151.101.112.134:443 Close_wait 3712 TCP 192.168.0.100:53162 151.101.128.134:443 Close_Wait TCP 192.168.0.100:53179 151,101 .128.233 3712 tashkil etilgan 3712 TCP 192.168.0.100:53176 151.101.112.134:443: 443 CLOSE_WAIT 3712 TCP 192.168.0.100:53192 151.101.112.64:443 CLOSE_WAIT 3712 TCP 192.168.0.100:53223 TCP 192.168.0.100:53192 192.16668.0.100:53230 185.52.52:443 TCP 192.168.0.100:443 TCP 192.168.0.100:443.2051.05.141:443-sonli TCP 5236 c: \ Windows \ Syme32-ni tashkil etdi

Ko'proq PID sifatida tanilgan jarayon identifikatori noyob raqamdir. Tizimda ishlaydigan har bir jarayon noyob identifikatorga ega.
TCP 0.0.0.0:80 0.0.0.0:0 TINGLASH 1612
TCP [::]:80 [::]:0 TINGLASH 1612

ochiq Vazifa menejeri

Faqat Apache2.4 xizmatida PID - 1612 mavjud

Katalogda C:/Dastur fayllari/Apache Software Foundation/Apache2.4/conf/extra/
faylni bloknotda oching - httpd-vhosts.conf

Har qanday o'zgartirish kiritishdan oldin, faylning zaxira nusxasini yarating - httpd-vhosts.conf.

VirtualHost bo'limlarida almashtiring
ustida

httpd-vhosts.conf - Apache 2.4 server konfiguratsiya faylining mazmuni

# Virtual xostlar # # Kerakli modullar: mod_log_config # Agar # kompyuteringizda bir nechta domenlar/xost nomlarini saqlamoqchi bo'lsangiz, ular uchun VirtualHost konteynerlarini o'rnatishingiz mumkin. Aksariyat konfiguratsiyalar # faqat nomga asoslangan virtual xostlardan foydalanadi, shuning uchun server # IP manzillar haqida tashvishlanmaydi. Bu quyidagi direktivadagi yulduzchalar bilan ko'rsatilgan. # # Hujjatlarga qarang.

Katalogda C: \ Windows \ System32 \ drayverlar \ va hokazo.
faylni bloknotda oching - xostlar
Va unga qator qo'shing:

127.0.0.1 localhost www.server-apache24.ru server-apache24.ru

Tugmani bosish orqali Apache serverini qayta ishga tushiring Qayta ishga tushirish
Apache xizmati monitorida.

Brauzerning manzil satriga kiriting - server-apache24.ru
va siz yaratgan Apache2.4 serverining asosiy sayt indeks sahifasiga qarang

Sayt indeks sahifasi www pastki katalogida joylashgan bo'lishi kerak (C:\server-apache24.ru\www\)

Apache 2.4 serverini o'rnatgandan so'ng, buyruq qatorini kiriting va buyruqlarni kiriting:

httpd.exe -t

Ikkita ogohlantirish olinadi.

Administrator: Buyruqlar qatori

Microsoft Windows (c) 2016 Microsoft korporatsiyasi. Barcha huquqlar himoyalangan. C:\Windows\system32> cd C:\Program Files\Apache Software Foundation\Apache2.4\bin\ C:\Program Files\Apache Software Foundation\Apache2.4\bin> httpd.exe -t AH00112: Ogohlantirish: DocumentRoot mavjud emas AH00112: Ogohlantirish: DocumentRoot mavjud emas Sintaksis OK C:\Program Files\Apache Software Foundation\Apache2.4\bin>

andyu

2016-07-23T17:54:43+00:00

2017-08-25T04:44:37+00:00

7613

Ushbu maqola Ubuntu serveridagi Apache veb-serverining konfiguratsiyasining umumiy ko'rinishini Ubuntu-da LAMP-ning standart o'rnatilishi bilan ta'minlaydi. Veb-server konfiguratsiya fayllarini tashkil qilish mantig'i va tuzilishi berilgan. Asosiy server konfiguratsiyasining maqsadi tasvirlangan. Asosiy Linux Ubuntu buyruqlari konfiguratsiyani boshqarish, Apache veb-serverini sozlash va boshqarish uchun berilgan. Apache-ni o'rnatish paytida yaratilgan standart sayt hisoblanadi. Maqola siz uchun LAMP serveringizni sozlash va boshqarishda foydali bo'ladi.

Qo'llab-quvvatlashni qanday qo'shish kerak PHP da skript protsessori sifatida Apache ustida ubuntu yoki Windows maqolada batafsil Windows tizimida PHP7 o'rnatish Bobda Sozlama.

Apache standart veb-sahifasi

Standart veb-serverni o'rnatish paytida Apache v ubuntu server veb-server o'rnatilgandan so'ng uning ishlashini tekshirish uchun xizmat qiluvchi test sayti yaratiladi. Ushbu sayt, sukut bo'yicha, faqat brauzerdan ichidagi fayllar va kataloglarga kirishga ruxsat berish uchun tuzilgan /var/www kataloglar ubuntu server. Agar o'rnatish tugagandan so'ng Apache, siz brauzeringizda veb-sahifani ochasiz IP veb-serveringizda siz serverning boshlang'ich sahifasini ko'rasiz - Apache2 Ubuntu standart sahifasi. Bu, birinchi navbatda, aytish bo'ladi Apache muvaffaqiyatli o'rnatildi va ishlaydi. Bu sahifa jismonan fayldagi serverda joylashgan /var/www/html/index.html va standart virtual xost konfiguratsiyasi uning konfiguratsiyasi va brauzerda chiqishi uchun javobgardir ( /etc/apache2/sites-available/000-default.conf) bu katalog uchun virtual xostni (saytni) belgilaydi /var/www/html va serverni o'rnatish vaqtida yaratiladi Apache. Shunga ko'ra, agar siz fayllaringizni ushbu papkaga joylashtirsangiz, ular veb-server tomonidan qayta ishlanadi. Bu haqida ham Standart sahifa bo'limida Konfiguratsiyaga umumiy nuqtai server konfiguratsiya fayllari tuzilishining sxematik tasvirini ko'rasiz. Bu erda siz konfiguratsiyalarning tuzilishi, nomlari va joylashuvini tushunishingiz kerak Apache v ubuntu boshqacha serverni boshqarish qulayligi uchun amalga oshiriladigan umumiy qabul qilingan sxemadan. Ammo bu erda bitta nuance bor, agar siz avval uy katalogida kataloglarni tashkil qilish bilan tanish bo'lmagan bo'lsangiz. Apache ustida ubuntu, keyin bu sxema faqat sizni chalkashtirib yuborishi mumkin, chunki u barcha papkalarni emas, balki faqat joylashgan kataloglarni o'z ichiga oladi ramziy ga havolalar faollashtirilgan konfiguratsiya fayllari. Shuning uchun, yaxshiroq tushunish uchun ushbu maqolaning keyingi qismida joylashgan Apache veb-server uy katalogining to'liq katalogiga va fayl diagrammasiga qarang. Apache veb-sahifasi bo'limidagi qimmatli narsalardan havolalar mavjud kishi"s Debian jamoalar uchun a2enmod, a2dismod, a2ensite, a2dissite, a2enconf, a2disconf, bu ma'lum turdagi konfiguratsiya fayllarini faollashtirish va o'chirish uchun ishlatiladi va batafsil tavsiflanadi. Shuningdek, bu yerda veb-serverga buyruqlar yuborish ( boshlangan/to'xtagan va hokazo.) ga murojaat qilish kerak /etc/init.d/apache2 yoki uchun apache2ctl, bu ham Ubuntu'da server xususiyatidir. Fayldagi Ubuntu serverida /usr/share/doc/apache2/README.Debian.gz to'liq hujjatlar bilan tanishishingiz mumkin Apache.

Ubuntu'da Apache uy katalogi

Birlamchi, uy veb-server katalogi Apache v ubuntu bo'l /etc/apache2/ fayl tizimidagi yo'llar. Ushbu katalog va uning pastki kataloglarida barcha konfiguratsiya fayllari mavjud. Apache. Asosiy konfiguratsiyadagi ServerRoot "/etc/apache2" direktivasi yordamida veb-server uy katalogi yo'lining qiymatini o'zgartirishingiz mumkin. apache2.conf. U erda, sukut bo'yicha, ServerRoot direktivasi izohlanadi, bu uning qiymatiga "/etc/apache2" ( slash bu direktivada bo'lmasligi kerak!). Uy katalogi yo'li qiymati Apache(ServerRoot ) server uchun zarur bo'lib, u fayl tizimining qayerda konfiguratsiya fayllarini izlash kerakligini biladi. Bundan tashqari, ServerRoot qiymati mumkin almashtirmoq argument sifatida kutilayotgan ba'zi ko'rsatmalarda server tomonidan yo'l fayl tizimida ubuntu. Shuning uchun, bunday hollarda, agar yo'l holda ko'rsatilgan bo'lsa boshlang'ich slash, keyin Apache sifatida qabul qiling qarindosh ga nisbatan yo'l uy kataloglar. Masalan, agar siz AuthUserFile .htpasswd direktivasini belgilasangiz, u holda ushbu variantda Apache belgilangan yo'lni shunday izohlaydi qarindosh va uni aylantiring /etc/apache2/.htpasswd, oldingi yo'l qiymatini o'rniga sizning uy kataloglar.

Ubuntu'da Apache uy katalogining tuzilishi

Jarayonda standart WEB server sozlamalari Apache v ubuntu veb-serverning uy katalogida quyidagi fayl va katalog tuzilmasi yaratiladi:

/etc/apache2/ ...........................Ubuntudagi Apache uy katalogi - ServerRoot |-- conf-mavjud...................... katalogi, turli konfiguratsiyalarni o'z ichiga oladi | `-- charset.conf ...................charset fayli | `-- localized-error-pages.conf .....xato sahifalarini o'rnatish uchun fayl | `-- other-vhosts-access-log.conf ... virtual xost jurnallarini o'rnatish uchun fayl | `-- security.conf .................xavfsizlik ko'rsatmalari uchun fayl | `--serv-cgi-bin.conf .............CGI konfiguratsiya direktivalari uchun fayl |-- conf yoqilgan faollashtirilgan dan konfiguratsiyalar conf-mavjud| `-- @ ...............dan faollashtirilgan konfiguratsiyalarga havola conf-mavjud |-- modlar mavjud...................... katalogi, o'rnatilgan Apache modullarining konfiguratsiyasi | `-- ... ........................mavjud Apache moduli konfiguratsiyasi |-- mods yoqilgan...................... katalogi, SHUNGORLARNI o'z ichiga oladi faollashtirilgan dan modul konfiguratsiyasi modlar mavjud| `-- @ .............................Apache moduli konfiguratsiyasiga havolalar |-- saytlar mavjud..................... katalog mavjud virtual xost konfiguratsiyasini o'z ichiga oladi | `-- 000-default.conf ............... Apache oʻrnatilganda yaratilgan 80-port uchun standart virtual xost fayli | `-- default-ssl.conf ............... 443-port uchun standart virtual xost fayli, Apache o'rnatilganda yaratilgan |-- saytlar yoqilgan.................. katalogi, ISHLAB CHIQISHLARNI o'z ichiga oladi faollashtirilgan dan virtual xost konfiguratsiyasi saytlar yoqilgan| `-- @000-default.conf ..............faollashtirilgan virtual xost konfiguratsiyasiga havola |-- apache2.conf........................ASOSIY Ubuntu'da Apache veb-server konfiguratsiyasi |-- envvars ............................... Apache muhiti uchun yo'l sozlamalari bilan fayl |- - sehrli ............................ modul uchun skript fayli mime_magic(ushbu modul sukut bo'yicha faol emas) |-- ports.conf .......................... o'rnatish uchun fayl portlar qaysi Apache ulanishlarni qabul qiladi

Ko'rsatilgan misollar OS Ubuntu server 16.04 LTS dan olingan, ammo xuddi shu narsa Ubuntu'ning server va ish stoli versiyalarida boshqa versiyalari va distributivlari uchun ham amal qiladi.

Apache konfiguratsiya mantig'i

Yuqorida aytib o'tilganidek, in ubuntu ishlatilgan ajoyib veb-server uchun konfiguratsiya fayllari va kataloglarining asl tashkiliy tuzilmasidan Apache.

Birinchidan, v ubuntu, konfiguratsiya Apache ga bo'lingan bir guruh Ularga ko'ra turli xil konfiguratsiyalar funktsional tayinlash. Masalan, belgilovchi direktivalar port server uchun alohida faylga ko'chirildi ports.conf. Muayyan server xavfsizlik parametrlari uchun mas'ul bo'lgan direktivalar faylga ko'chiriladi security.conf. Shunday qilib, direktivalar, xuddi shunday, o'ziga xos tarzda guruhlangan. ma'nosi alohida konfiguratsiya fayllariga. Bu konfiguratsiyalarni o'qish, tahrirlash, faollashtirish va o'chirishda juda mantiqiy va qulay. Ushbu yondashuv bilan har bir alohida fayl kichikroq bo'ladi va bo'ladi yuqori ixtisoslashgan konfiguratsiyaning bir qismi. Biroq, siz tushunishingiz kerakki, bunday bo'linish faqat sozlamalarning qulayligi va avtomatlashtirilishi uchun amalga oshiriladi va texnik jihatdan, agar xohlasangiz, barcha direktivalar va sozlamalarni bitta faylga yozishingiz mumkin, shunchaki bunday fayl bilan ishlash unchalik qulay bo'lmaydi. .

Ikkinchidan: markaz butun konfiguratsiya asosiy konfiguratsiya Apache veb-serverlar - apache2.conf fayl. Bu fayl ichida birinchi navbat veb-serverni qidiradi va o'qiydi Apache ishga tushirish yoki qayta ishga tushirishda. Va allaqachon bu faylda direktivalar yordamida O'z ichiga oladi, ular ko'rsatilgan joyda, boshqa barcha belgilangan konfiguratsiyalar ulanadi va yuklanadi. Shunday qilib, barcha konfiguratsiya fayllari birlashtiriladi yolg'iz veb-server konfiguratsiyasi va bu sodir bo'lganda Apache tomonidan fayllarni o'qiydi buyurtma dan boshlab ularning aloqalari boshliq konfiguratsiya. Bundan muhim eslatma kelib chiqadi - buyurtma konfiguratsiyadagi quyidagi ko'rsatmalar Apache va shunga mos ravishda, buyurtma konfiguratsiya fayllarini ulash muhim, chunki server tomonidan keyinroq o'qiladigan direktivalar avval o'qilgan direktivalarni bekor qilishi mumkin. Serverni sozlashda buni yodda tutish kerak.

Uchinchidan: agar siz katalog tuzilishiga qarasangiz uy kataloglar Apache uchtasini ko'rasiz juftliklar kabi nomlarga ega kataloglar: katalog_prefiksi-mavjud/yoqilgan. Ushbu mantiqiy tuzilma sizning konfiguratsiyalaringizni tarqatish uchun mo'ljallangan uchta guruh, asoslangan prefiks katalog nomi, qaerda conf-* bular boshqa konfiguratsiyalaringiz uchun kataloglar, mods-* bular Apache moduli konfiguratsiyasi uchun kataloglar va saytlar-* bu sizning konfiguratsiyalaringiz uchun kataloglar virtual xostlar. Ushbu kataloglar nomining ikkinchi qismi -mavjud/-yoqilgan mantiqan umumiy va faqat mavjud ekanligini ko'rsatadi faol hozirda konfiguratsiyalar. Shunday qilib, kataloglarda *-mavjud hammasi saqlanadi mavjud konfiguratsiya fayllarini ishlatish uchun va allaqachon shakl kataloglarida *-yoqilgan ramziy havolalar (yorliqlar) faqat ushbu konfiguratsiyalar uchun *-mavjud konfiguratsiyani yuklashda veb-server tomonidan o'qilishi kerak bo'lgan kataloglar. Apache formaning faqat kataloglarini o'qiydi *-yoqilgan, shuning uchun faqat ushbu kataloglarda mavjud bo'lgan konfiguratsiyalarni qo'llang havolalar. Ushbu yondashuv qo'shimcha qulaylik darajasini beradi, chunki u barcha konfiguratsiyalaringizni serverning uy katalogida saqlashga va faqat foydalanishga imkon beradi. zarur joriy tangalarga.

To'rtinchidan: veb-server konfiguratsiya ko'rsatmalari Apache bor kontekst() ular faoliyat yuritadi. tushuncha kontekst direktivalar bu direktivani qayerda, qaysi darajada va qanday konfiguratsiyada ko'rsatadi balki foydalanilsin. Xuddi shu direktivani faqat bitta turdagi kontekstda yoki bir nechta kontekstda ishlatishga ruxsat berilishi mumkin. Agar direktiva ruxsat etilmagan kontekstda ishlatilsa/yozilgan bo'lsa, u holda xato Apache veb-server to'xtatilishiga olib keladigan konfiguratsiyani yuklashda. Shuning uchun, direktivalaringizni yozayotganda, har doim Apache saytidagi direktiva hujjatlarida ko'rsatilgan ularni qo'llash kontekstiga e'tibor bering.

Beshinchi: buni tushunishingiz kerak Apache faqat qachon barcha faol konfiguratsiyalarni o'qiydi va qo'llaydi boshlash yoki qayta ishga tushiring. Apache ishga tushirilgandan so'ng konfiguratsiyani qayta o'qimaydi. Fayl bundan mustasno. .htaccess, bu mahalliy darajadagi fayl katalog saytida va qayta o'qing hamma ushbu sayt katalogiga kirish. Shunga ko'ra, agar siz tashqarida konfiguratsiya parametrlariga o'zgartirishlar kiritgan bo'lsangiz .htaccess fayl, keyin ularning kuchga kirishi uchun zarur qayta yuklash veb server Apache.

Direktiv kontekst turlari:

  • server konfiguratsiyasi - global umumiy server konfiguratsiya fayllarida qo'llash uchun direktiv darajasi tashqarida va tashqarida konteynerlar va tashqarida fayl .htaccess;
  • virtual xost- Daraja virtual direktivani qo'llash uchun xost idish
  • katalog- Daraja katalog, direktiv konteynerlar ichida ishlatilishi kerak , , , ;
  • .htaccess- Daraja mahalliy katalog saytida direktiva a ichida qo'llanilishi mumkin.

Konfiguratsiyani boshqarish buyruqlari

Qulaylik va konfiguratsiyani boshqarishni avtomatlashtirish uchun Apache v ubuntu maxsus buyruqlar mavjud bo'lib, ular yordamida siz ma'lum konfiguratsiya fayllarini server konfiguratsiyasiga kiritishingiz yoki chiqarib tashlashingiz, serverni ishga tushirishingiz va qayta ishga tushirishingiz, muhit o'zgaruvchilari sozlamalarini ko'rishingiz va o'zgartirishingiz mumkin. Apache va boshqalar.

Konfiguratsiyani yoqish/o'chirish buyruqlari

Muayyan konfiguratsiyalarni faollashtirish va o'chirish uchun ubuntu taqdim etilgan buyruqlar bilan undosh bo‘lgan yordamchilar mavjud/yoqilgan va prefiks katalog. Masalan, buyruq a2enconf, deb shifrlash mumkin apache2-enable-conf, dan argumentida ko'rsatilgan konfiguratsiya faylini faollashtiradi conf-mavjud ramziy yaratish orqali katalog havolalar katalogda conf yoqilgan. Jamoa a2disconf teskari harakatni amalga oshiradi, ya'ni. bu havolani olib tashlaydi. Xuddi shunday mantiq qolgan buyruqlar uchun ham amal qiladi: a2enconf/a2disconf, a2enmod/a2dismod, a2ensite/a2dissite. Ammo siz ko'rish kataloglarida kerakli konfiguratsiyalarga ramziy havolalarni qo'lda yaratishingiz / o'chirishingiz mumkin *-yoqilgan.

Diqqat: konfiguratsiya o'zgarishlari kuchga kirishi uchun siz bajarishingiz kerak qayta ishga tushirish veb-server konfiguratsiyasi Apache.

a2enconf/a2disconf

Katalogdan kerakli konfiguratsiyani yoqish yoki o'chirish uchun conf-mavjud server konfiguratsiyasida buyruqlardan foydalaning:

Konfiguratsiyani yoqish:

sudo a2enconf

Konfiguratsiyani o'chiring:

sudo a2disconf

a2enmod/a2dismod

O'rnatilgan Apache modulini katalogdan faollashtirish uchun modlar mavjud

Apache modulini yoqing

sudo a2enmod

Apache modulini o'chiring

sudo a2dismod

a2ensite/a2dissite

Katalogdan virtual xost konfiguratsiyasini faollashtirish uchun saytlar mavjud va buyruqlar yordamida uni o'chiring:

Apache-da Virtual Xostni yoqing

sudo a2ensite

Apache-da virtual xostni o'chirib qo'ying

sudo a2dissite

Apache boshqaruv buyruqlari

V ubuntu, murojaat qilish uchun muhit o'zgaruvchilari foydalanish tufayli jin httpd veb-serverida siz quyidagi kabi qo'ng'iroqlardan foydalanishingiz mumkin: /etc/init.d/apache2 yoki apache2ctl yoki apache2:

sudo/etc/init.d/apache2 sudo apache2ctl sudo apache2

Veb-sayt hosting

Buni to'rtta usulda qilish mumkin:

    Sukut bo'yicha /var/www/html jildida. Kirish http://localhost/

    Asosiy hosting sozlamalari. Masalan, http://localhost/phpmyadmin

    Virtual xostlar moduli yordamida istalgan papkada. Masalan, http://mening saytim/

    public_html foydalanuvchi papkasida (userdir moduli). Masalan, http://localhost/~username

O'rnatish

Apache-ni terminalda ishga tushirish uchun:

sudo apt-get install apache2

Sozlama

Sozlamalardagi o'zgarishlarni qo'llash uchun siz Apache demonini qayta ishga tushirishingiz kerak: sudo service apache2 restart

Ubuntu'da yakuniy konfiguratsiya fayli (apache2.conf) turli pastki kataloglarda joylashgan bir nechta fayllarga bo'lingan. Batafsil faylning sharhlarida o'qing. apache2.conf.

/etc/apache2/ |-- apache2.conf | `-- ports.conf |-- mods-enabled | |-- *.yuklash | `-- *.conf |-- conf-faol | `-- *.conf `-- saytlar yoqilgan `-- *.conf

Modul sozlamalari katalogda joylashgan /etc/apache2/mods-available. Modullarni yoqish yoki o'chirish uchun (modul sozlamalari) tegishli buyruqlardan foydalaning a2enmod yoki a2dismod . Modul ulanishiga misol:

sudo a2enmod< mod-name>

Sizning sozlamalaringiz katalogda joylashgan fayllarga saqlanishi kerak /etc/apache2/conf-available. Sozlamalaringizni yoqish yoki o'chirish uchun tegishli a2enconf yoki a2disconf buyruqlaridan foydalaning. Maxsus sozlamalar bilan faylni ulash misoli:

sudo a2enconf< config-name>

Virtual xost sozlamalari katalogda joylashgan fayllarga saqlanishi kerak /etc/apache2/sites-available. Virtual xostlarni ulash uchun tegishli a2ensite yoki a2dissite buyruqlaridan foydalaning. Virtual xostni ulashga misol:

sudo a2ensite< site-name>

Standart kodlash

Standart kodlashni belgilash uchun fayldagi AddDefaultCharset direktivasidan foydalaning /etc/apache2/conf-available/charset.conf(yoki tegishli qatorni izohdan olib tashlang):

AddDefaultCharset UTF-8

Virtual xostlar

Virtual xost konfiguratsiya fayllari saqlanadi /etc/apache2/sites-available/*.conf. Apache allaqachon sukut bo'yicha sozlangan bitta virtual xostga ega. Uning sozlamalari faylda 000-default.conf. Ushbu virtual xostni misol sifatida ishlatishingiz mumkin.

Virtual xostni o'rnatishga misol:

#Xost nomi ServerName host1.server1 #Host ildiz papkasi DocumentRoot /var/www/host1.server1 #.htaccess AllowOverride All yordamida barcha direktivalarni qayta yozishga ruxsat

Konfiguratsiya fayliga xostingiz nomini host1.server1.conf deb nomlang va saqlang.

Konfiguratsiya faylini yaratgandan so'ng, host nomini /etc/hosts ga qo'shing:

127.0.0.1 host1.server1

Yaratilgan virtual xostni yoqish uchun a2ensite yordam dasturidan foydalaning:

sudo a2ensite host1.server1

Xost a2dissite yordam dasturi bilan bir xil tarzda o'chirib qo'yilgan:

sudo a2dissite host1.server1

Modullar

mod_userdir

Mod_userdir moduli veb-sahifalarni saqlash uchun foydalanuvchilarning uy kataloglaridagi kataloglardan foydalanish imkonini beradi. Odatiy bo'lib, Apache katalogdagi so'ralgan sahifalarni qidiradi ~/public_html

mkdir ~/ public_html

mod_userdir ni yoqish uchun quyidagilarni bajaring:

sudo a2enmod userdir

va www-ma'lumotlar guruhiga kerakli foydalanuvchini qo'shing:

sudo adduser $USER www-ma'lumotlar

keyin Apache-ni qayta ishga tushiring:

Sahifalar http://localhost/~username manzilida mavjud bo'ladi, bu erda foydalanuvchi nomi foydalanuvchi nomidir.

CGI

Serverda cgi skriptlarini ishga tushirishni istasangiz, cgi modulini buyruq bilan ulang

sudo a2enmod cgi

Odatiy bo'lib, cgi skriptlari katalogga joylashtirilgan /usr/lib/cgi-bin, lekin siz ularni virtual xost sozlamalarida yoki fayldagi barcha xostlar uchun global miqyosda belgilash orqali istalgan joyga joylashtirishingiz mumkin. /etc/apache2/conf-enabled/serve-cgi-bin.conf.

Agar sizning serveringiz tashqi tarmoqda ishlayotgan bo'lsa, xavfsizlik nuqtai nazaridan cgi skriptlarini virtual xostning asosiy katalogidan tashqariga joylashtirish tavsiya etiladi.

Apache-da HTTPS-ni sozlash

Apache veb-serveri HTTPS-ni to'liq qo'llab-quvvatlaydi. Allaqachon o'rnatilgan Apache'da HTTPS qo'llab-quvvatlashini yoqish uchun siz quyidagilarni qilishingiz kerak.

Kalit va ssl sertifikatini yaratish

O'z-o'zidan imzolangan sertifikatlardan foydalanish passiv tinglashdan himoyalangan holda, mijozlarga server kerakli server ekanligini kafolatlamaydi. O'z-o'zidan imzolangan sertifikatlarning afzalligi shundaki, ular bepul. Sertifikat organi tomonidan imzolangan sertifikat pul turadi.

Kalit va sertifikat yaratish uchun buyruqni kiriting:

Openssl req -new -x509 -kun 30 -keyout server.key -out server.pem

Biz "PEM o'tish iborasini kiriting:" savoliga parol bilan javob beramiz, tasdiqlang va eslab qoling.

Biz keyingi barcha savollarga o'zboshimchalik bilan javob beramiz, siz taklif qilingan variantlarga rozi bo'lgan holda Enter tugmasini bosishingiz mumkin, faqat "Umumiy ismingiz (masalan, SIZNING ismingiz):" savoliga biz sertifikat yaratayotgan sayt nomi bilan javob berishingiz mumkin. misol www.example.com.

Barcha savollarga javob bergandan so'ng, katalogda ikkita yangi fayl paydo bo'lishi kerak - server.pem (kalit) va server.crt (sertifikat).

Yaratilgan kalitdan foydalanish uchun siz biz kiritgan parolni bilishingiz kerak va Apache yuklashda bizdan buni so'raydi, lekin nima uchun bizga jinlardan qo'shimcha savollar kerak? :) Shuning uchun biz kalitdan parolni olib tashlaymiz:

cp server.key( ,.orig) openssl rsa -in server.key.orig -out server.key rm server.key.orig

Ularni /etc/ssl-ga nusxalang va kalit faylni o'qish uchun faqat administratorga ruxsat bering:

sudo cp server.pem / etc/ ssl/ certs/ sudo cp server.key / etc/ ssl/ private/ sudo chmod 0600 / etc/ ssl/ private/ server.key

Apache sozlamalari

Avval mod_ssl-ni faollashtirishingiz kerak:

sudo a2enmod ssl

Va keyin saytning standart HTTPS sozlamalarini yoqing:

sudo a2ensite default-ssl

Endi siz faylni standart HTTPS sayt sozlamalari bilan tahrirlashingiz kerak, undagi sertifikatlaringizga yo'llarni ko'rsating. Faylning o'zi /etc/apache2/sites-enabled/default-ssl (yoki /etc/apache2/sites-enabled/default-ssl.conf).

SSL mexanizmi yoqilgan

qator qo'shing

SSLProtocol all -SSLv2

eski SSLv2 protokolidan foydalanishni o'chirish uchun.

# Serverning umumiy sertifikati SSLCertificateFile /etc/ssl/certs/server.pem # Server shaxsiy kaliti SSLCertificateKeyFile /etc/ssl/private/server.key

Endi Apache-ni qayta yuklang:

sudo xizmati apache2 ni qayta ishga tushiring

Va agar barcha parametrlar to'g'ri bo'lsa, saytlaringiz HTTPS orqali mavjud bo'ladi.

HTTPS protokoli 443-portda ishlaydi, shuning uchun agar server shlyuz orqasida bo'lsa, unda siz ushbu portni unga yo'naltirishingiz kerak.

HTTP so'rovlarini HTTPS ga yo'naltirish

Agar siz HTTP-dan foydalanishni o'chirib qo'ymoqchi bo'lsangiz, unda eng oqilona narsa barcha HTTP so'rovlarini sahifalarga ularning HTTPS manzillariga yo'naltirishdir. Keling, buni mod_alias bilan qilaylik. Agar u yoqilmagan bo'lsa, quyidagilarni yoqing:

sudo a2enmod taxallus sudo xizmati apache2 qayta ishga tushirildi

Keyin HTTP so'rovlari uchun standart virtual xost uchun mas'ul bo'lgan /etc/apache2/sites-enabled/000-default faylini o'zgartiramiz. Ushbu faylga direktivani qo'shing

Qayta yo'naltirish /https://example.com/

Shu bilan birga, barcha katalog sozlamalari o'chirilishi mumkin, chunki sizning saytlaringizga hali HTTP orqali etib bo'lmaydi.

Hammasi shunday, endi Apache-ni qayta ishga tushiring va HTTP orqali kirishda siz avtomatik ravishda HTTPS sahifasiga yo'naltirilganligiga ishonch hosil qiling.

Apache HTTP Server - bu butun dunyo bo'ylab turli platformalar va operatsion tizimlarda ishlaydigan murakkab dasturiy mahsulot. Shuning uchun, o'rnatilgan tizimda to'g'ri ishlashi uchun uni sozlash (konfiguratsiya) bo'lishi kerak.
Odatiy bo'lib, Apache sozlamalari conf katalogidagi httpd.conf faylida joylashgan. Quyida httpd.conf faylidagi asosiy ko'rsatmalar va ularning keng tarqalgan ma'nolari tavsiflanadi.

httpd.conf faylini tahrirlash

1. Mod_rewrite modulini yuklash uchun ushbu qatorni toping va izohni olib tashlang (satr boshidagi “#” belgisini olib tashlang):
LoadModule rewrite_module modules/mod_rewrite.so
2. PHP tarjimonini yuklash uchun modul yuklash blokining oxiriga quyidagi qatorni qo‘shing:
LoadModule php5_module "C:/php/php5apache2_2.dll"
3. Quyidagi qatorni qo'shish orqali PHP konfiguratsiya fayli joylashgan katalogni aniqlang:
PHPIniDir "C:/php"
4. Qatorni toping va izohni olib tashlang:
ServerName localhost: 80
5. Qatorni toping:
DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
Sayt boshqaruvi ildiz katalogini tayinlang (siz uni biroz oldin yaratgansiz):
DocumentRoot "c:/apache"
6. Ushbu blokni toping:

Variantlar FollowSymLinks
AllowOverride None
Buyurtmani rad etish, ruxsat berish
Hammadan rad eting

Va uni quyidagi bilan almashtiring:

Variantlar FollowSymLinks indekslarini o'z ichiga oladi
AllowOverride All
Hammadan ruxsat bering

7. Asl katalog boshqaruv blokini olib tashlang yoki sharhlang (bu bizga kerak emas), u izohlarsiz shunday ko'rinadi:

Variantlar indekslari FollowSymLinks
AllowOverride None
ruxsat berish, rad etish
Hammadan ruxsat bering

8. Blokni toping:

DirectoryIndex index.html

Uni quyidagi bilan almashtiring:

DirectoryIndex index.html index.htm index.shtml index.php

9. Qatorni toping:
ErrorLog "logs/error.log"
Quyidagi bilan almashtiring (bu holda global server xato faylini ko'rish qulayroq bo'ladi):
ErrorLog "C:/apache/error.log"
10. Qatorni toping:
CustomLog "logs/access.log" keng tarqalgan
O‘zgartirish:
CustomLog "C:/apache/access.log" keng tarqalgan
11. SSI ishlashi uchun (server tomonini yoqish) quyidagi qatorlar blokda joylashgan , siz topishingiz va izohni olib tashlashingiz kerak:
AddType matn/html .shtml
AddOutputFilter INCLUDES.shtml
12. Quyida, xuddi shu blokda qo'shing , ikki qator:
AddType ilovasi/x-httpd-php .php
AddType ilovasi/x-httpd-php-source .phps
13. Va nihoyat, qatorlarni toping va izohlang:
conf/extra/httpd-autoindex.conf ni qo'shing
conf/extra/httpd-vhosts.conf ni qo'shing
conf/extra/httpd-manual.conf ni qo'shing
conf/extra/httpd-default.conf ni qo'shing
O'zgarishlarni saqlang va "httpd.conf" faylini yoping

Endi "conf\extra" katalogida joylashgan "httpd-vhosts.conf" faylini oching va unga quyidagi o'zgartirishlarni kiriting:

Mavjud virtual xost misol bloklari sharhlanishi yoki olib tashlanishi va quyidagilar kiritilishi kerak:

DocumentRoot "C:/apache/localhost/www"
server nomi localhost
ErrorLog "C:/apache/localhost/error.log"
CustomLog "C:/apache/localhost/access.log" keng tarqalgan

Virtual xost yaratish misoli

Agar siz o'zingizning virtual xostlaringizni o'rnatishingiz kerak bo'lsa, quyidagilarni bajaring:

"httpd-vhosts.conf" faylini oching va unda shunday blok yarating:

# Xostingizning ildizi joylashgan papka.
DocumentRoot "C:/apache/test.ru/www"
# Virtual xostga kirishingiz mumkin bo'lgan domen.
ServerName test.ru
# Domenning taxallus (qo'shimcha nomi).
ServerAlias ​​www.test.ru
# Xatolar yoziladigan fayl.
ErrorLog "C:/apache/test.ru/error.log"
# Xostga kirish jurnali fayli.
CustomLog "C:/apache/test.ru/access.log" keng tarqalgan

Keyin "apache" katalogida "test.ru" papkasini yarating (xuddi shunday, nuqta bilan), unda o'z navbatida "www" papkasini yarating.

Virtual xost yaratishning keyingi bosqichi operatsion tizimning C:\WINDOWS\system32\drivers\etc\hosts faylini o'zgartirishdir. Ushbu faylni oching va unga ikkita qator qo'shing:
127.0.0.1 test.ru
127.0.0.1 www.test.ru

Endi Apache serverini "Ishga tushirish" menyusida joylashgan "Qayta ishga tushirish" yorlig'i bilan qayta ishga tushiring, brauzerni oching, manzil satriga test.ru yoki www.test.ru yozing va o'zingizni virtual xostingizda topasiz. Ehtiyot bo'ling, endi siz virtual xost nomi bilan (agar mavjud bo'lsa www.test.ru) asl saytga faqat sharh berish yoki qatorni o'chirish orqali kirishingiz mumkin: 127.0.0.1 www.test.ru, yuqorida. "xostlar" fayli.

Server ishlayotgan Apache hujjatlari http://localhost/manual/ manzilida mavjud.

Apache veb-serverini o'rnatish va sozlash tugallandi.

Xizmatlarni boshlash va to'xtatish uchun ommaviy ish fayllarini yaratish

Xizmatlarni har safar ishga tushirganingizda "xostlar" faylini qo'lda tahrirlash qulay emasligiga rozi bo'ling, shuning uchun Apache, MySQL xizmatlarini qulayroq, bir vaqtda ishga tushirish va "xostlar" faylini o'zgartirish uchun biz ikkita ommaviy ish faylini yaratamiz: boshlash va to'xtatish, bu barcha muntazam ishlarni avtomatik ravishda bajaradi.

Virtual xostlardan foydalanganda C:\apache katalogida ikkita fayl yaratishingiz kerak: vhosts-off.txt - "hosts" faylining asl mazmunini o'z ichiga olgan va vhosts-on.txt - barcha virtual xostlarni o'z ichiga oladi. E'tibor bering, yangi virtual xostlar yaratishda ularni C:\WINDOWS\system32\drivers\etc\hosts-ga emas, balki vhosts-on.txt fayliga qo'shishingiz kerak bo'ladi. Quyidagi misollarni ko'rib chiqing.

vhosts-off.txt fayli (bitta qatorni o'z ichiga olishi mumkin):
127.0.0.1 mahalliy xost

www.test.ru va test.ru virtual xostlari bilan vhosts-on.txt fayliga misol:

127.0.0.1 mahalliy xost
127.0.0.1 www.test.ru
127.0.0.1 test.ru

Xuddi shu C:\apache katalogida ikkita ommaviy ish faylini yarating: start-webserver.bat - xizmatlarni ishga tushirish va "xostlar" faylini almashtirish uchun va stop-webserver.bat - xizmatlarni to'xtatish va "xostlar" faylini tozalash uchun.

start-webserver.bat faylini ishga tushiring:

@echo off
aks-sado.
agar mavjud bo'lmasa C:\apache\vhosts-on.txt no_vhosts-ga o'ting
echo Virtual xostlar yaratish:
/v /y C:\apache\vhosts-on.txt C:\WINDOWS\system32\drivers\etc\hosts-ni nusxalash
aks-sado.
:no_vhosts
NET ishga tushirilgan Apache2.2
NET MySQL-ni ishga tushiring

stop-webserver.bat faylini to'xtating:

@echo off
aks-sado.
agar mavjud bo'lmasa C:\apache\vhosts-off.txt no_vhosts-ga o'ting
echo Xost faylini tiklash:
/v /y C:\apache\vhosts-off.txt C:\WINDOWS\system32\drivers\etc\hosts-ni nusxalash
aks-sado.
:no_vhosts
NET stop Apache2.2
NET MySQL-ni to'xtatish

Agar siz virtual xostlardan foydalanmasangiz yoki "xostlar" faylini o'zgartirmasdan xizmatlarni ishga tushirishni xohlasangiz, C:\apache katalogidan vhosts-on.txt va vhosts-off.txt fayllarini olib tashlang.

Ushbu qo'llanma davomida biz Apache veb-serverini, PHP, Tomcat (JSP-ni qo'llab-quvvatlash uchun) o'rnatish va ularni birgalikda ishlash uchun ulashni batafsil ko'rib chiqamiz. Misol uchun Apache konfiguratsiya faylini ko'rib chiqing. Keyin MySQL serverini o'rnatamiz va unga PHP va JSP dan kirish misollarini ko'rib chiqamiz. MySQL bilan ishlash uchun PHPMyAdmin-ni o'rnating.

Kerakli komponentlar

Men quyidagi versiyalardan foydalanganman, ehtimol eng oxirgisi.
Apache 2.0.52
PHP 4.3.9
Tomcat 5.5.4
mod_jk 1.2.6
J2SDK 1.5.0
MySQL 4.1.7
Ulagich/J 3.1.6
PHPMyAdmin 2.6.0
Kerakli komponentlarni qayerdan olsam bo'ladi?
Apache veb-server
http://httpd.apache.org/
PHP
http://www.php.net/
JSP

* Tomcat
http://jakarta.apache.org
* mod_jk
http://www.javaportal.ru/downloads/downloads.html
* Java
http://java.sun.com/

* MySQL ma'lumotlar bazasi

* Ulagich/J
http://dev.mysql.com/downloads/
* PHPMyAdmin
http://www.phpmyadmin.net/

Apache o'rnatilmoqda

Boshlash uchun, keling, C diskida Server papkasini yarataylik, u erda bizga kerak bo'lgan hamma narsani o'rnatamiz. Biz barcha kerakli dasturlarni oldindan yuklab olamiz, siz men ishlatgan yoki undan yuqoriroq versiyalardan foydalanishingiz mumkin.

Biz apache_2.0.52-win32-x86-no_ssl ni ishga tushiramiz va xush kelibsiz oynasini ko'ramiz:

"Keyingi" tugmasini bosing.

Bizga ushbu mahsulotdan foydalanish litsenziyasi bilan tanishish taklif qilingan oyna paydo bo'ladi, "Men qabul qilaman ..." ni tanlang. va "Keyingi" tugmasini bosing.

Bir oz tarix va yana "Keyingi".

Yuqoridagi rasmda ko'rsatilganidek, server ma'lumotlari oynasida ma'lumotlarni kiriting:
Tarmoq domeni: localhost
Server nomi: localhost
Administratorning elektron pochta manzili: localhost"@localhost

Shuningdek, biz "Barcha foydalanuvchilar uchun, 80 portda, xizmat sifatida - Tavsiya etilgan" ni tanlaymiz. Va keyin "Keyingi"

O'rnatish uchun barcha komponentlarni tanlash uchun Custom-ni tanlang.

To'liq o'rnatish uchun hamma narsani tanlang, o'rnatish yo'lini C: ServerApache2 ga o'zgartiring

Yana "Keyingi" tugmasini bosing.

O'rnatish jarayonini kuzatish.

Oʻrnatish tugallandi. Pastki o'ng burchakda stash paydo bo'ldimi?

Agar shunday bo'lsa, bizning veb-serverimiz o'rnatilgan. Sichqonchaning chap tugmasi bilan belgini bosing va boshqaruv panelini oching:

Bu erda biz serverimizni ishga tushirishimiz, to'xtatishimiz yoki qayta ishga tushirishimiz mumkin.

Endi serverimizni sinab ko'ramiz. Brauzerni oching va manzil satriga http://localhost kiriting. Agar siz quyidagi chiqishni ko'rsangiz:

Shunday qilib, server muvaffaqiyatli o'rnatildi.

PHP o'rnatilmoqda

php-4.3.9-Win32.zip tarkibini C: Server jildiga chiqarib oling va natijada paydo bo'lgan "php-4.3.9-Win32" papkasini "php4" ga o'zgartiring.

Endi biz serverga PHP tarjimonimiz borligini bildirishimiz kerak.

C:ServerApache2confhttpd.conf server konfiguratsiya faylining oxiriga quyidagi yozuvni qo'shing:

# Serverga PHP tarjimoni mavjudligini bildiring ScriptAlias ​​/php4/ "C:/Server/php4/" Action application/x-httpd-php4 "/php4/php.exe" # PHP skriptlari uchun kengaytmalarni o'rnating AddType ilovasi /x- httpd-php4 .php .php3 .php4 .phtm .phtml

Biz faylni saqlaymiz. Biz serverimizni qayta ishga tushiramiz (server boshqaruv panelidagi qayta ishga tushirish tugmasi), qanday qilishni unutmadingizmi?

Endi biz ushbu to'plamning ishlashini tekshirishimiz kerak. C:ServerApache2htdocs jildida (bu jild sukut bo'yicha ildiz papkasi bo'lib, http://localhost orqali kirish mumkin) biz quyidagi tarkibga ega phpinfo.php faylini yaratamiz:

Tejaymiz. Brauzerda http://localhost/phpinfo.php ni oching, agar hamma narsa yaxshi bo'lsa, quyidagilarni ko'rishingiz kerak:

JSP yordamini o'rnatish

Buning uchun biz JDK 1.5 versiyasini o'rnatishimiz kerak, chunki biz Tomcat 5 ni o'rnatamiz va u 1,5 dan past versiyalarda ishlamaydi.

jdk-1_5_0-windows-i586.exe-ni ishga tushiring

Biz litsenziya shartnomasiga rozimiz.

Biz hamma narsani avvalgidek qoldiramiz

Biz ham hamma narsani avvalgidek qoldiramiz.

Mavjud brauzerlar uchun plaginlarni o'rnatishni tanlash uchun dialog oynasi ochiladi, siz ko'rib turganingizdek, menda faqat bittasi bor.

JDK o'rnatilgan!!!

Tomcat 5 ni o'rnatishni boshlaylik.

Jakarta-tomcat-5.5.4-ni ishga tushiring

Biz xush kelibsiz va litsenziya shartnomasini qabul qilamiz

Biz barcha komponentlarni tasdiq belgilari bilan belgilab, to'liq o'rnatishni tanlaymiz.

Hammasini bitta "Server" papkasiga o'rnating

Konfiguratsiyani sukut bo'yicha qoldiring.

JREga yo'l tekshirilmoqda.

Oʻrnatish jarayoni

OK. hammasi tayyor. Ammo hozircha Tomcat o'z-o'zidan ishlaydi va Apache bilan bog'lanmagan.

Tomcat ishlashini tekshirish. Biz brauzerda http://localhost:8080/ ni ochamiz, chunki Tomcat sukut bo'yicha 8080 portni tinglaydi. Agar natija ijobiy bo'lsa, biz quyidagilarni ko'rishimiz kerak:

Endi bizning vazifamiz Tomcat-ni localhost-ga o'rnatishdir:

Buning uchun mod_jk.dll ulagichini C:ServerApache2modules jildiga nusxalashimiz va Apache2 httpd.conf konfiguratsiya fayliga quyidagi yozuvni qo'shishimiz kerak:

################################################# # ######### ## JSP qo'llab-quvvatlash ## Tomcat avtomatik konfiguratsiya faylidan ko'chirildi ## + JkMount /*.jsp ajp13 ## qo'shildi + Virtual Host IfModule o'chirildi !mod_jk.c> JkWorkersFile "C:/Server/Tomcat 5.5/conf/workers.properties" JkLogFile "C:/Server/Tomcat 5.5/logs/mod_jk.log" JkLogLevel ma'lumotlari JkMount /menejer ajp13 JkMount/Tomcat ajp13 JkMount/ajp13/ajp1tx JkMount /servlets-examples/ * ajp13 JkMount /jsp-examples ajp13 JkMount /jsp-examples/ * ajp13 JkMount /tomcat-docs ajp13 JkMount /tomcat-docs/ * Moajt113b JkMount / J3-Mount /J3d Mounk/J3b/Moajt/J3b13 /*. jsp ajp13

Keyin Apache2 serverini qayta ishga tushirishingiz kerak.

Endi tekshirib ko'ramiz, u ishlaydimi? Brauzerda oching http://localhost/jsp-examples/. Va agar biz quyidagilarni ko'rsak, unda hamma narsa ishlaydi!

Server konfiguratsiyasi

Endi biz serverimizni tartibga solishimiz kerak, keling, uni o'zimiz uchun sozlaymiz. Httpd.conf faylini oching, u yerdan hamma narsani o'chiring va matnni u erga joylashtiring:

# Bizning veb-serverimiz o'rnatilgan papka ServerRoot "C:/Server/Apache2" # Port bizning veb-serverimiz tinglaydi Listen 80 # SSI ni o'rnating, shtm kengaytmali fayllar uchun, shtml html AddType text/html .shtm .shtml .html AddOutputFilter QO'SHIMCHALAR .shtm .shtml .html # Veb-server administratorining elektron pochta manzili (o'zingiznikiga o'zgartirish) ServerAdmin [elektron pochta himoyalangan]# Bizning serverimiz: port ServerName localhost:80 UseCanonicalName Off # Bo'shliqlar bilan ajratilgan indeks fayllari DirectoryIndex index.htm index.html index.shtm index.shtml index.php index.php3 index.php4 index.jsp # O'rnatilgan AccessFi konfiguratsiya fayl nomi. htaccess # Veb-serverga bizda PHP tarjimoni mavjudligini bildiring ScriptAlias ​​/php4/ "C:/Server/php4/" Action application/x-httpd-php4 "/php4/php.exe" # PHP skriptlari uchun kengaytmalarni o'rnating AddType ilovasi/ x-httpd-php4 .php .php3 .php4 .phtm .phtml # Barcha html va boshqa fayllarimizni joylashtiradigan papka. DocumentRoot "C:/Server/www" PidFile logs/httpd.pid Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 HostnameLookups Off # Modullar LoadModule access_module modules/mod_access.so LoadModule access_module modules/mod_access.so LoadModule action modules/ali_Module modules/ali_module modules/ali_module modules. modules/mod_asis.so LoadModule auth_module modules/mod_auth.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule cgi_module modules/mod_cgi.so LoadModule dir_module modules/mod_dir.so LoadModule dir_module modules/mod_Module.so LoadModule/module_module.so o‘z ichiga oladi LoadModule_module. uchun /mod_include.so LoadModule isapi_module modullar / mod_isapi.so LoadModule log_config_module modullar / mod_log_config.so LoadModule mime_module modullar / mod_mime.so LoadModule negotiation_module modullar / mod_negotiation.so LoadModule setenvif_module modullar / mod_setenvif.so LoadModule userdir_module modullar / mod_userdir.so # Yopish kirish konfiguratsiya fayllari (.htaccess) va parollar (.htpasswd) Buyurtmaga ruxsat bering, hammadan rad eting# Fayl turlari bilan baza TypesConfig conf/mime.types # Barcha hujjatlar turi - matn DefaultType text/plain MIMEMagicFile conf/magic# Xato jurnali fayli ErrorLog logs/error.log # Jurnal fayliga nima yozish uchun quyidagi qiymatlar qabul qilinishi mumkin: # disk raskadrovka, maʼlumot, ogohlantirish, ogohlantirish, xato, tanqid, ogohlantirish, emeg. LogLevel warn # Hisobot fayliga satr yozish uchun shablon LogFormat "%h %l %u %t "%r" %>s %b "%(Referer)i" "%(User-Agent)i"" birlashtirilgan LogFormat "%h %l %u %t "%r" %>s %b" umumiy LogFormat "%(Referer)i -> %U" referer LogFormat "%(User-agent)i" agenti # Barcha veb-saytlar roʻyxatini koʻrsatuvchi hisobot fayli serverga kirish uchun CustomLog logs/access.log umumiy ServerTokens To'liq # Veb-server imzosi (Yoqilgan - yoqilgan, O'chirilgan - o'chirilgan, # Email - server administratorining elektron pochtasini ko'rsatish) ServerSignature Yoqilgan # Virtual papkalar # Masalan: # Alias ​​/ icons/ "C:/ Server/Apache2/icons/" # http://localhost/icons/ ga o'tsak, biz C:/Server/Apache2/icons/ Alias ​​/ icons/ "C:/" jildining mazmunini ko'ramiz. Server/Apache2/icons/" AddIconByEncoding (CMP ,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) matn/ * AddIconByType (IMG,/icons/image2.gif) tasviri / * AddIconByType (SND,/icons/sound2 .gif) audio/ * AddIconByType (VID,/icons/movie.gif) video/ * # Turli formatlar uchun piktogrammalarni tanlang AddIcon /icons/binary.gif .bin .exe AddIcon /icons/binhex.gif .hqx AddIcon /icons/tar.gif .tar AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv AddIcon /icons/compressed.gif .Z .z .tgz . gz .zip AddIcon /icons/a.gif .ps .ai .eps AddIcon /icons/layout.gif .html .shtml .htm .pdf AddIcon /icons/text.gif .txt AddIcon /icons/c.gif .c AddIcon /icons/p.gif .pl .py AddIcon /icons/f.gif .for AddIcon /icons/dvi.gif .dvi AddIcon /icons/uuencoded.gif .uu AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl AddIcon /icons/tex.gif .tex AddIcon /icons/bomb.gif yadrosi AddIcon /icons/back.gif .. AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^ ^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ # Noma'lum formatlar uchun belgi DefaultIcon /icons/unknown.gif # Agar biron-bir jildning mazmuni ko'rsatilsa, tavsif fayllari o'qiladi: ReadmeName README.html HeaderName HEADER. html # Katalog roʻyxatida eʼtiborga olinmaydigan fayllar IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t AddEncoding x-compress Z AddEncoding x-gzip gz tgz # Bizning kodlash AddDefaultCharset WINDOWS-1251 # "C:/Server/Apache2/cgi-bin" CGI skript katalogimiz AllowOverride None Options Hech biri Buyurtmaga ruxsat berish, rad etish Barchasidan ruxsat berish################################################# # ######### ## JSP qo'llab-quvvatlashi ## Tomcat avtomatik konfiguratsiya faylidan ko'chirildi ## + JkMount / *.jsp ajp13 ## qo'shildi + Virtual xost o'chirildi LoadModule jk_module C:/Server/Apache2/modules/mod_jk.dll JkWorkersFile "C:/Server/Tomcat 5.5/conf/workers.properties" JkLogFile "C:/Server/Tomcat 5.5/logs/mod_jk.log" JkLogLevel ma'lumotlari JkMount /menejer ajp13 JkMount/Tomcat ajp13 JkMount/ajp13/ajp1tx JkMount /servlets-examples/ * ajp13 JkMount /jsp-examples ajp13 JkMount /jsp-examples/ * ajp13 JkMount /tomcat-docs ajp13 JkMount /tomcat-docs/ * Moajt113b JkMount / J3-Mount /J3d Mounk/J3b/Moajt/J3b13 /*.jspajp13

Tejaymiz. Biz serverni qayta ishga tushiramiz.

MySQL serverini o'rnatish

Mysql-4.1.7-win.zip faylini o'ramidan chiqaring va Setup.exe faylini ishga tushiring

Salom, Keyingiga bosing

Bu erda biz Custom-ni tanlaymiz, chunki biz barcha komponentlarni to'liq o'rnatishimiz va o'rnatish yo'lini belgilashimiz kerak.

O'rnatish uchun barcha komponentlarni tanlaymiz va C: ServerMySQL Server 4.1 ni o'rnatish yo'lini belgilaymiz. Biz oldinga boramiz.

O'rnatish jarayonini boshlashga tayyormisiz? O'rnatish-ni bosing.

O'rnatish jarayonini kuzatish.

MySQL.com saytida ro'yxatdan o'tish bosqichini o'tkazib yuboring.

"MySQL serverini sozlash" katagiga belgi qo'ying. Va biz konfiguratsiyaga o'tadigan o'rnatish jarayonini yakunlaymiz.

Yana bir bor salom.

Biz miyamizni umuman changlamaslik uchun standart konfiguratsiyani tanlaymiz, keyin agar xohlasangiz, sozlamalarga ko'tarilishga harakat qilishingiz mumkin.

MySQL serveri Windows xizmati sifatida ishlashini belgilang.

Administrator uchun parolni belgilang, deylik, u "parol" bo'ladi.

Bajaring va ishingiz tugadi! Keyin biz pastki o'ng burchakda quyidagi rasmni ko'ramiz:

Endi biz MySQL serverimizni sinab ko'rmoqdamiz. www jildida quyidagi tarkibga ega index.php faylini yarating:

Tejaymiz.

Brauzerda http://localhost/index.php ni oching va….

U erda yo'q edi! Xato "Mijoz server tomonidan so'ralgan autentifikatsiya protokolini qo'llab-quvvatlamaydi; MySQL mijozini yangilashni o'ylab ko'ring"

Xo'sh, bu kichik nomuvofiqlik. . . MySQL 4.1 parollarni saqlashning yangi usulini taqdim etadi va shu sababli barcha eski mijozlar MySQL bilan mos kelmaydi. Nima qilsa bo'ladi?