Pag-configure ng Apache: sunud-sunod na mga tagubilin

Talaan ng mga Nilalaman:

Pag-configure ng Apache: sunud-sunod na mga tagubilin
Pag-configure ng Apache: sunud-sunod na mga tagubilin
Anonim

Palaging nakatuon ang propesyonal na pag-unlad sa sarili nitong mga tool - ito ay isang garantiya ng maaasahan at mahusay na pagtupad ng mga obligasyon. Ang sariling pagho-host at mga server para sa iba't ibang layunin sa hanay ng mga sikat na configuration ay nagpapalawak ng saklaw ng mga gawaing lulutasin, dagdagan ang seguridad at pagiging kumpidensyal ng mga development.

Native HTTP: Apache, PHP, MySQL

Ang Apache web server ay naging matatag na pinuno mula noong nakaraang siglo dahil nagbibigay ito ng mabilis, maaasahan at secure na karanasan. Ang isang pisikal na makina at isang server na nagpapatakbo ng Linux o Windows ang pundasyon, ang HTTP ay ang add-on, bagama't ito ay mahalagang protocol ng komunikasyon. Maaaring gamitin ang Windows machine bilang server, ngunit mas gusto ang pamilya ng Linux.

Ang Apache sa Windows ay isang lokal na variant na ginagamit sa isang makina para i-duplicate ang pagbuo ng mga mapagkukunang naka-host sa mga external na server. Ang pag-install sa Windows Server ay katanggap-tanggap, ngunit hindi masyadong sikat. Ang pagse-set up ng Apache sa CentOs ay nagbibigay ng higit pang mga opsyon at ginagamit upang ayusin ang mga server sa lokal atmga pandaigdigang network.

Pinaniniwalaan na ang mga server ng Apache ay nagsisilbi ng higit sa 50% ng lahat ng aktibong mapagkukunan ng web, ang iba ay nahuhulog sa mga katulad na produkto mula sa Microsoft, Sun at iba pa. Sa totoo lang, ang pisikal na server at ang operating system nito ay maaaring maging anuman. Ang HTTP server ay inilalagay sa isang handa na platform at gumagana nang kahanay sa iba pang mga application dito. Ang Apache ay itinuturing na katutubong sa buong pamilya ng Linux, ngunit sa bawat kaso mayroon itong sariling mga kakaiba.

Pag-setup ng Apache
Pag-setup ng Apache

Libre, simple, maaasahang Linux system at ang kanilang mga application. Hindi mahalaga kung ano ang iyong ginagamit: Ang pag-install at pag-configure ng Apache sa Ubuntu ay hindi gaanong naiiba sa CentOs, Debian o FreeBSD. Kadalasan ang saturation ng isang partikular na operating system na may karagdagang software ay gumaganap ng isang papel.

Ang pamilya ng Linux ay maliit sa mga tuntunin ng bilang ng mga "kamag-anak" sa linya ng isa o isa pang core ng system. Ang mga pagkakaiba ay higit sa isang panlipunang kalikasan - sa kahulugan ng pag-attach ng mga developer sa pagbabalangkas at pagpapatupad ng mga kakayahan ng operating system.

Sa katotohanan, upang malutas ang isang partikular na gawain sa pagtaas ng pagho-host, kailangan mong magpasya sa kinakailangang functionality, kinakailangang pagganap, konseptong priyoridad at isang partikular na pagpipilian ng isang kinatawan ng Linux, o huminto sa Windows Server.

Paglipat sa mga priyoridad ng lokal na pagpapaunlad

Mahirap tasahin ang papel ng pandaigdigang network sa pagbuo ng programming, ngunit madaling makita ang isang tunay na pagbabago sa sentro ng grabidad: naging kaugalian na ang magsagawa ng mga lokal na aplikasyon bilang isang mapagkukunan sa web. Sumulat lamang ng isang programa para salokal na computer - ito ay mga driver, antivirus, maliliit na proyekto na may simpleng pag-andar. Programming language … VBA, bagama't maaaring gamitin ang C/C++ o C.

Anumang proyekto ng impormasyon ay isang web resource sa lokal na network ng kumpanya, na maaaring bahagyang ma-access mula sa pandaigdigang network, halimbawa, upang i-coordinate ang mga aksyon ng mga empleyado sa labas ng opisina, sa kalsada o sa isang business trip.

MySQL, PHP, Apache: pag-set up para sa isang lokal na kaso ng paggamit - isang ganap na naiibang dinamika ng application, ang kinakailangang pag-andar. Ang mga kumpanya ngayon, anuman ang laki, bilang ng mga empleyado at industriya, ay seryosong isinasaalang-alang ang Internet programming, parehong lokal at pandaigdigan.

Mga Priyoridad sa Lokal na Pag-unlad
Mga Priyoridad sa Lokal na Pag-unlad

Kasabay nito, maaaring ipamahagi ang lokal na programming ng isang web resource: ang mga opisina ng kumpanya ay matatagpuan kahit saan, ngunit hindi ito ang Internet, ngunit isang distributed local network ng kumpanya.

MySQL, PHP, Apache setup sa lokal na anyo:

  • madaling i-duplicate sa mga network computer;
  • nagbibigay ng kakayahang dynamic na baguhin ang aktibong bahagi o itugma ito sa isang sample upang suriin ang mga pagtatangka sa pag-hack;
  • nagbibigay ng dahilan upang bumuo ng isang sistema ng seguridad na walang panganib na maatake ng mga klasikal na pamamaraan ng network.

Kung isasaalang-alang namin na ang MySQL at Apache sa Windows environment ay mga serbisyo, at ang PHP code ay simpleng text na pinoproseso ng isang tool (PHP interpreter) na tinatawag sa tamang oras ng isang HTTP server, ang antas ng pagbabago, magiging mobility at code portabilitymakabuluhang mas mataas kaysa sa mga lokal na tool sa pagpapaunlad.

Paghahanda para sa pag-install ng Apache

Kahit sa panahon ng "simula ng simula" tinukoy ng operating system ng Unix ang hindi nasabi na mga prinsipyo ng katapatan. Simula noon, lahat ng ginawa sa ilalim ng mga sistemang katulad ng Unix ay awtomatikong isinalin sa ibang mga platform. Ang pag-set up ng Apache sa Windows ay napakadali, ngunit ang mga seryosong gawain ay nangangailangan ng isang mahusay na antas ng karanasan at isang detalyadong pag-unawa sa configuration ng HTTP server.

Una sa lahat, kailangan mong i-download ang pinakabagong bersyon ng server (ngayon ay bersyon 2.4.33 na may petsang 2018-17-03) mula sa opisyal na website sa zip-archive na format. Dapat tandaan sa simula na ang mga bersyon ng server ay marami at inaalok sa maraming mapagkukunan ng third-party, kaya mahalagang pumili ng opisyal na pagpapatupad na naka-host sa isang pinagkakatiwalaang mapagkukunan ng web.

configuration ng apache centos
configuration ng apache centos

Noon, sikat na mag-install ng server sa pamamagitan ng espesyal na installer. Karaniwan na ngayon ang palawakin ang isang zip archive. Ito ay mas madali at ginagawang posible na maunawaan ang kakanyahan ng proseso ng pagsasaayos, na napakahalaga at kasunod nito ay nagbibigay-daan sa iyong i-optimize ang server para sa gustong load at functionality.

Pag-edit ng configuration file

Ang configuration ng server ay tinutukoy ng isang set ng mga configuration file na matatagpuan sa conf folder. Ang pangunahing file ng configuration ng Apache ay

Sa napakaraming kaso, kinakailangan na gumawa ng mga pagbabago sa pangunahing file, linawin ang mga nilalaman ng mga file na responsable para sa mga ssl at virtual host. Karaniwan ang iba pang mga settingay ginawa sa panahon ng pagpapatakbo ng server habang ang mga problema ay lumitaw o ang mga gawain ay nalutas. Karaniwan, ang mga karagdagang setting ay nauugnay sa pag-optimize ng Apache o pagpapalawak ng mga kakayahan nito.

Upang matagumpay na ilunsad ang server, sapat na ang pag-edit lamang ng isang linya (sa pagkakasunud-sunod - ang ika-38) - at nakumpleto ang configuration ng Apache.

pag-setup ng apache ubuntu
pag-setup ng apache ubuntu

Sa mga nakaraang bersyon ng configuration ng server, kailangang gumawa ng maraming pagbabago sa totoong sitwasyon, ngunit ngayon ay may "unibersal" na variable ng SVRROOT. Ito ay nagkakahalaga ng pagtukoy sa tamang halaga nito (ang path patungo sa lokasyon ng server), at lahat ay gagana kaagad.

Server Deployment Procedure

Kailangan mong mag-ingat sa lokasyon ng server. Ang Apache mismo ay kawili-wili, ngunit kapag ito ay nilagyan ng PHP at MySQL, ito ay dobleng kawili-wili. Mas maganda kapag nasa isang lugar ang lahat ng nauugnay sa web development. Maaari kang sumang-ayon sa mga default na landas, ngunit ang modernong programming ay hindi masyadong perpekto sa pagpapatupad nito, kaya kailangan mong panatilihin ang iyong daliri sa pulso nang hindi malabo at madalas. Bilang karagdagan, kapag pumipili ng isang maginhawang lokasyon, lahat ng initialization at configuration file, pati na rin ang mga log sa pagpapatakbo ng mga naka-install na produkto ay magiging available.

Na-download na opisyal na Apache zip-archive ay dapat na i-deploy sa napiling lokasyon, paglalagay ng tool at gumana nang hiwalay. Sa halimbawang ito, ang C:\SCiA folder ay ang tool (Apache24, PHP, MySQL, …), at ang SCiB folder ay ang gawain ng mga website na ginawa, pinananatili, o na-upgrade.

pag-install at pagsasaayos ng apache
pag-install at pagsasaayos ng apache

Bilang resultaSa unang yugto ng trabaho, tanging ang bin, cgi-bin, conf, error, … mga subfolder kasama ang lahat ng nilalaman nito ang mapupunta sa C:\SCiA\Apache24 na folder.

I-edit ang file ng mga host

Ang pangalawang hakbang ay ang wastong pag-set up ng hosts file - isang indikasyon kung aling mga IP address sa isang partikular na computer ang nakamapa sa kung aling mga pangalan. Kung isang site lang ang bubuo o papanatilihin ng computer, wala kang mababago.

Ang batayang IP - 127.0.0.1 ay karaniwang palaging tumuturo sa localhost. Ang gumaganang hosts file ay matatagpuan sa c:\Windows\System32\drivers\etc at ganito ang hitsura.

pag-setup ng apache ssl
pag-setup ng apache ssl

Upang ilagay ang hosts file sa tamang lugar, kailangan mong gamitin ang command line sa administrator mode. Maaari mong ihanda ang mga tamang nilalaman ng file saanman sa file system ng iyong computer, ngunit maaari mo lamang itong isulat sa c:\Windows\System32\drivers\etc gamit ang isang tool na may mga karapatan ng administrator. Ang pinakamadaling paraan para gawin ito ay sa pamamagitan ng command line.

I-install ang Apache server

Walang mas madali. Ito ay sapat na upang patakbuhin ang command prompt bilang isang administrator at pumunta sa C:\SCiA\Apache24 folder. Dahil ito ay isang landas sa isang Windows system, ginagamit ang mga forward slash. Sa isang partikular na kaso, maaaring iba ang landas. Ngunit kung maaari ka pa ring mag-eksperimento sa pangalan ng folder upang mag-host ng holy trinity - Apache, PHP at MySQL - kung gayon ang pagpapalit ng mga pangalan ng folder para sa bawat isa sa kanila ay hindi praktikal.

php apache setup
php apache setup

Sa kasong ito, ang server archive ay naka-deploy sa C:/SCiA/Apache24 na folder,samakatuwid, kailangan mong isulat ang command sa bin folder:

httpd.exe -k install

Susubukan ng server ang configuration file at i-install ang sarili nito. Malamang na magkakaroon ng mga maliliit na error, ngunit kung i-edit mo nang tama ang configuration file, ang lahat ng mga error ay magiging maliit at maaaring mabilis na maayos.

Window (1) ng command line - pag-install ng serbisyo, window (2) - ang listahan ng mga serbisyo kung saan lumitaw ang server, window (3) - ang index.html source file na matatagpuan sa С:/SCiB /localhost/www, window (4) - ang resulta ng server.

Sa halimbawang ito, isang pagkakamali ang sadyang ginawa: sa halip na itakda ang halaga ng variable ng SRVROOT, maraming mga pag-edit ang ginawa "sa makalumang paraan": lahat ay manu-manong binago. Hindi ito ang pinakamahusay na solusyon. Bago ilapat ang kaalaman, dapat mong pamilyar ang iyong sarili sa kasalukuyang bersyon ng produkto. Bilang isang tuntunin, mabilis na nagbabago ang mga bagay, at dapat gamitin ang kaalaman “nang may kaalaman sa usapin at pag-unawa sa kasalukuyang sitwasyon.”

Ang kasanayan sa pag-deploy ng zip archive

Ang mga modernong site ay hindi palaging nakasulat sa mga system ng pamamahala ng nilalaman. Mayroong maraming mga manu-manong paggawa. Ang problema ng paglilipat ng site sa isa pang hosting ay humantong sa isang mahusay na solusyon - isang zip archive. Na-collapse na content sa isang lugar, pinalawak ito sa isa pa.

Naglalagay ng zip archive
Naglalagay ng zip archive

Ang pagkakaroon ng installer ay magandang kasanayan, ngunit ang dynamics ng modernong teknolohiya ng impormasyon ay hindi nagbibigay ng oras upang magsulat ng magagandang installation. Gumamit ng pag-install sa pamamagitan ng pag-deploy ng zip-archive - moderno, praktikal at maginhawa. Sa opsyong ito, limitado ang configuration ng Apache sa pagpapalit ng mga configuration file.

Kapag nag-i-install ng server, mahalagang tukuyin ang:

  • nasaan siya;
  • kung saan matatagpuan ang web resource (localhost);
  • gamit ang ssl;
  • virtual hosts.

Ang huling posisyon ay may kaugnayan kapag ito ay dapat na bumuo o magpanatili ng ilang mga mapagkukunan nang sabay-sabay sa server. Para sa isang tunay na developer, ito ay kailangang-kailangan: kahit na nagbibigay ito ng gawain ng isang site, hindi magiging kalabisan na magkaroon ng fallback.

Gentlemen's set

Madaling i-deploy ang isang zip archive ay kitang-kita, ang Apache (pag-install at pagsasaayos) ay dalawa o tatlong pag-click lamang ang layo. Gayunpaman, ang resulta noong sikat ang mga installer ay katumbas. Ang developer ay gumugol lamang ng mas maraming oras sa pagbuo ng susunod na bersyon ng kanyang produkto. Ang pag-install ng server, wika ng server, at database ay isang set lang ng mga file, panimulang serbisyo, hosts file, at mga default na path sa operating system variable path.

Ang pagdating ng Denver at mga katulad na mga development kit ng mga ginoo ay isang rebolusyonaryong hakbang sa linya ng pagiging simple at kaginhawahan, ngunit huwag magkamali. Ang rebolusyon at programming ay ganap na hindi magkatugma. Ang una ay isang anak ng isang salungatan at ang mabagyo nitong paglutas, ang pangalawa ay isang seryosong bagay na nangangailangan ng ganap na kalmado, pagiging maagap, katumpakan, pagkakapare-pareho, pagkaasikaso, kaligtasan, pagiging maaasahan.

Ang pag-configure sa Apache server ay isang seryosong pamamaraan na kailangang gawin nang maingat at lahat ay dapat gawin upang bukas ay may mabago at linawin ka.

Sa karamihan ng mga kaso, web developmentAng mga mapagkukunan ay medyo mahahabang proseso kung saan ang mga kinakailangan para sa mga serbisyo (Apache, PHP, MySQL, …) ay mabilis na nagbabago, ngunit palaging may oras upang maunawaan ang susunod na gawain at ang pinakamainam na solusyon nito. Ngunit hindi ito dahilan para magpatuloy sa mga set ng gentleman. Lumipas ang oras, ngunit hindi nagbabago ang ginoo, ito ay isang mas nakakahimok na argumento kaysa sa deklarasyon ng Denver - ito ay simple, mabilis at naa-access.

Maramihang site - isang server

Ang pag-set up ng Apache 2.4 para sa isang host ay isang hindi makatarungang karangyaan. Sa kabila ng compact na disenyo nito, ang server na ito ay may malaking bigat ng responsibilidad para sa higit sa kalahati ng mga aktibong mapagkukunan ng web ng Internet. Bilang karagdagan, hindi lahat ng mapagkukunan ay may kinatawan na bahagi at nakikita sa network.

Ang server ay maaaring gamitin bilang isang database, bilang isang punto ng paglilipat ng impormasyon, bilang isang filter, bilang isang parser, bilang isang gumaganang mekanismo sa isang mas pandaigdigang proseso ng impormasyon. Bilang resulta, ang pagse-set up ng mga Apache virtual host ay halos palaging kinakailangan.

Maaaring suportahan ng isang server ang maraming mapagkukunan ng web hangga't gusto mo, para dito kailangan mong alisin ang komento sa linya 501 sa httpd.conf file:

Isama ang conf/extra/httpd-vhosts.conf

at ilarawan ang lahat ng kinakailangang host sa file

extra\httpd-vhosts.conf

Maaaring kailanganin mong linawin kung aling mga port at IP ang pinakikinggan ng server, ngunit ito ay isang hiwalay na isyu, sa unang pagkakataon maaari mong limitahan ang iyong sarili sa kung ano.

pag-setup ng apache 2.4
pag-setup ng apache 2.4

Dapat tandaan na sa halimbawa, para sa kaginhawahan ng paglalarawan ng mga tunay na virtual na mapagkukunan ng web (at marami sa kanila), isang variable ang ipinakilala(DOCROOT) na may landas patungo sa nakabahaging folder ng lahat ng mapagkukunan ng web na magagamit sa pamamagitan ng naka-install na server.

Apache SSL configuration ay available sa katulad na paraan. Sa httpd.conf file, kailangan mo lang mag-iwan ng "as is" na linya mula 524 hanggang 531, na responsable para sa pagpapatakbo ng SSL.

Ang pagiging simple at pagiging kumplikado ng Apache

Ang mga araw kung kailan ang pagse-set up ng server ay isang tunay na hamon ay matagal na. Ngayon, ang pagse-set up ng Apache ay isang napakasimpleng pamamaraan na hindi nangangailangan ng mga espesyal na kasanayan mula sa developer.

Tatlong madaling hakbang:

  • palawakin ang archive;
  • palitan ang configuration file;
  • i-install ang server.

Bilang resulta, ganap na gumagana ang Apache. Kung hindi mo isasaalang-alang ang mga subtlety ng proseso ng pagpapatakbo ng server sa maximum na load o gumawa ng lokal na pag-develop sa isang Windows computer, walang karagdagang kaalaman ang kinakailangan.

Maaaring magkaroon ng mga kahirapan sa mga Linux system. Ang makabuluhang naiibang pag-unawa sa file system, mga karapatan ng user at grupo, pati na rin ang organisasyon ng proseso ng pakikipag-ugnayan sa iba pang mga application ay nangangailangan ng developer na maging mas mahusay at maunawaan kung paano gumagana ang mga Linux computer.

Ang pag-configure ng Apache sa anumang Linux system ay nagbubukas ng higit pang mga pagkakataon para sa developer at nagbibigay ng access sa lokal na network at sa Internet. Ayon sa tradisyon, ang isang Windows computer ay isang lokal na workstation, at ang server ay panloob doon. Ang Linux computer ay isang file server, isang web server, at isang local network node o point sa Internet space.

Propesyonal na kapaligirandeveloper

Ang Apache ay isang pangunahing bloke ng gusali ng espasyo sa Internet na madaling at madaling i-configure, magamit at magiging backbone ng imprastraktura ng network ng kumpanya.

Ang logic na ito ay ipinapalagay na mayroong kahit isang server sa network na nagpapatakbo ng CentOS, Ubuntu, FreeBSD, Windows workstation. Pinakamainam na magkaroon ng dalawang server ng Linux (pangunahin at pantulong), pag-setup ng Apache para sa isang lokal na computer sa isang kapaligiran ng Windows. Sa kaganapan ng isang pag-atake ng virus o isang hindi inaasahang sitwasyon, ang auxiliary server ay papalitan ang pangunahing isa, at ang pangunahing server ay aayusin at maibabalik. Maaari mong palitan ang lokal na pag-install ng Apache sa isang workstation (sa ilalim ng Windows) mula sa archive.

Ang maliit na solusyon na ito ay maaaring pinuhin at dagdagan sa totoong pagsasanay. Maaaring matukoy ng laki ng mga daloy ng impormasyon ng kumpanya ang gustong configuration at ang kinakailangang bilang ng mga server. Sa totoo lang, ang Apache ay idinisenyo upang gumana sa ilalim ng pagkarga, ngunit walang pumipigil sa iyo na ipamahagi ang mga responsibilidad ng isang server sa ilan. Ang isang solusyon na isinasaalang-alang ang mga katangian ng isang partikular na kumpanya ay palaging mas maaasahan kaysa sa pag-adapt ng isang third-party na opsyon.

Inirerekumendang: