Apa itu Apache? Memasang Apache pada Windows (7). Menambah direktori PHP pada PATH pada Windows

Pelayan HTTP Apache(dari bahasa Inggeris pelayan yang bertompok-tompok, "pelayan dengan tampalan", di samping itu, terdapat kiasan kepada suku Indian Apache. Sebutan yang herot adalah perkara biasa di kalangan pengguna Rusia Apache) ialah pelayan web berciri penuh yang boleh dikembangkan yang menyokong sepenuhnya protokol HTTP/1.1 dan merupakan sumber terbuka.

Pelayan boleh berjalan pada hampir semua platform biasa. Terdapat boleh laku pelayan sedia untuk Windows NT, Windows 9x, OS/2, Netware 5.x dan beberapa sistem UNIX. Pada masa yang sama, ia sangat mudah untuk dipasang dan dikonfigurasikan.

Sebenarnya, ia adalah fleksibiliti konfigurasi, serta kebolehpercayaannya, yang dianggap sebagai kelebihan utama pelayan Apache. Ia membolehkan anda menyambungkan modul luaran untuk menyediakan data, menggunakan DBMS untuk mengesahkan pengguna, mengubah suai mesej ralat, dsb. Menyokong IPv6.

Apache dikonfigurasikan menggunakan fail konfigurasi teks. Tetapan asas sudah dikonfigurasikan secara lalai dan akan berfungsi dalam kebanyakan kes. Jika fungsi Apache standard tidak mencukupi, maka adalah mungkin untuk menggunakan pelbagai modul yang ditulis oleh Kumpulan Apache dan pembangun pihak ketiga. Kelebihan penting ialah pencipta berkomunikasi secara aktif dengan pengguna dan membalas semua mesej ralat.

Fungsi paling mudah yang boleh dilakukan oleh Apache adalah untuk duduk di pelayan dan menyediakan laman web HTML biasa. Apabila permintaan untuk halaman tertentu diterima, pelayan menghantar responsnya kepada penyemak imbas. Permintaan ialah alamat yang ditaip dalam bar alamat penyemak imbas.

Untuk memisahkan reka bentuk dan bahagian berfungsi tapak, serta memudahkan pengubahsuaian objek statik, terdapat teknologi SSI. Ia membolehkan anda meletakkan semua maklumat berulang ke dalam satu fail (contohnya, top.inc), dan kemudian memasukkan pautan kepadanya ke dalam halaman. Kemudian, jika perlu menukar maklumat, maklumat dalam satu fail sahaja diubah. Pelayan Apache menyokong teknologi ini dan membolehkan anda menggunakan kemasukan sisi pelayan untuk potensi penuh mereka.

Fungsi pelayan Web dilakukan bukan oleh komputer itu sendiri, tetapi oleh program yang dipasang padanya: iaitu, apabila penyemak imbas pengguna menyambung ke pelayan Web dan menghantar pengepala GET (permintaan untuk memindahkan fail), ia adalah Apache yang memproses permintaan itu. Apache menyemak sama ada fail yang dinyatakan dalam pengepala GET wujud dan, jika ya, menghantarnya bersama pengepala ke penyemak imbas.

Apache ialah sejenis standard pelayan Web di Internet. Pesaing utamanya ialah IIS (Internet Information Server) daripada Microsoft, yang dijalankan pada Windows. Apache, walaupun terdapat versi untuk Windows, terutamanya dipasang pada sistem pengendalian seperti Unix - Linux dan FreeBSD. Perlu diingatkan juga bahawa kebanyakan hoster menggunakan Apache, bukan IIS. IIS biasanya dipasang pada pelayan korporat yang menjalankan Windows.

Pelayan Apache adalah salah satu pelayan pertama yang menyokong pelayan maya (hos). Ini memungkinkan untuk mengehoskan beberapa laman web lengkap pada satu pelayan fizikal. Setiap daripada mereka boleh mempunyai domain sendiri, pentadbir, alamat IP, dan sebagainya.

Apache menyokong teknologi CGI dan PHP, serta keupayaan untuk menyambung bahasa. Ini menjadikannya lebih mudah untuk bekerja dengan halaman web dinamik (yang, sebenarnya, adalah hampir semua halaman web hari ini).

Pada masa ini, pelayan Apache kini dipasang pada 67% pelayan di seluruh dunia.

Sejarah penciptaan

Pelayan Apache dibangunkan dan diselenggara oleh Projek Apache.

Ia pada asalnya merupakan variasi pelayan Web NCSA yang dibangunkan di Pusat Pembangunan Superkomputer Nasional di Universiti Illinois. Tetapi pada tahun 1994, pemaju utama NCSA meninggalkan projek itu, meninggalkan pengikutnya untuk memikirkan pelayannya sendiri. Lama kelamaan, pembetulan dan penambahan pada pelayan NCSA mula muncul - patch yang dipanggil (tampalan, diterjemahkan dari bahasa Inggeris sebagai "tampalan"). Dan pada April 1995, versi pertama pelayan Apache telah dikeluarkan, yang berdasarkan versi 1.3 pelayan NCSA. Versi pertama Apache hanya menggabungkan semua pembetulan pelayan NCSA yang diketahui. Dan nama Apache sendiri berasal dari ini - "A PatCHy".

Apache kemudiannya menjadi pembangunan bebas. Sejak versi kedua, kod tersebut telah ditulis semula supaya ia tidak mengandungi sebarang petunjuk kod NCSA. Pelayan Apache kini diselenggara oleh sekumpulan pengaturcara sukarela, Kumpulan Apache.

Pelayan Apache pada asalnya dibangunkan untuk sistem pengendalian Linux dan Unix, tetapi lama kelamaan versinya dikeluarkan untuk Windows dan OS/2.

Pada masa ini, pembangunan dijalankan di cawangan 2.2, dan dalam versi 1.3 dan 2.0 hanya pembetulan pepijat keselamatan dibuat. Hari ini, versi terkini cawangan 2.4 ialah versi 2.4.3, dikeluarkan pada 21 Ogos 2012. Untuk versi pertama, pembetulan terkini dilabelkan 1.3.42.

Pelayan web Apache dibangunkan dan diselenggara oleh komuniti pembangun terbuka di bawah naungan Yayasan Perisian Apache dan disertakan dalam banyak produk perisian, termasuk Oracle DBMS dan IBM WebSphere.

Dari April 1996 hingga kini ia telah menjadi pelayan HTTP yang paling popular di Internet. Angka tertinggi telah dicapai pada tahun 2012 - Apache dijalankan pada 67% pelayan di seluruh dunia. Pada tahun 2011 bahagiannya ialah 59%, pada tahun 2009 – 46%, dan pada tahun 2007 – 51%.

Rajah panggilan sistem dalaman Apache

seni bina Apache

Teras Apache merangkumi fungsi teras seperti pengendalian fail konfigurasi, protokol HTTP dan sistem pemuatan modul. Teras (berbanding dengan modul) dibangunkan sepenuhnya oleh Yayasan Perisian Apache, tanpa penyertaan pengaturcara pihak ketiga.

Secara teorinya, kernel Apache boleh berfungsi dalam bentuk tulennya, tanpa menggunakan modul. Walau bagaimanapun, fungsi penyelesaian sedemikian sangat terhad.

Teras Apache ditulis sepenuhnya dalam bahasa pengaturcaraan C.

Sistem konfigurasi Apache adalah berdasarkan fail konfigurasi berasaskan teks. Ia mempunyai tiga tahap konfigurasi bersyarat:

  • Konfigurasi pelayan (httpd.conf)
  • Konfigurasi hos maya (httpd.conf sejak versi 2.2, extra/httpd-vhosts.conf)
  • Konfigurasi peringkat direktori (.htaccess)

Ia mempunyai bahasa fail konfigurasi sendiri berdasarkan blok arahan. Hampir semua parameter kernel boleh ditukar melalui fail konfigurasi, termasuk kawalan MPM. Kebanyakan modul mempunyai parameter mereka sendiri. Sesetengah modul menggunakan fail konfigurasi sistem pengendalian dalam kerja mereka (contohnya, /etc/passwd dan /etc/hosts). Di samping itu, parameter boleh ditentukan melalui suis baris arahan.

Terdapat banyak model berbilang pemprosesan simetri untuk pelayan web Apache. Apache HTTP Server juga menyokong modulariti. Terdapat lebih daripada 500 modul yang melaksanakan pelbagai fungsi. Walaupun sebahagian daripadanya dibangunkan secara langsung oleh pasukan Yayasan Perisian Apache, kebanyakan modul sedia ada dibangunkan oleh pembangun sumber terbuka pihak ketiga.

Modul boleh sama ada dimasukkan ke dalam pelayan pada masa penyusunan atau dimuatkan secara dinamik melalui arahan fail konfigurasi.

Menggunakan modul anda boleh melaksanakan perkara berikut:

  1. Peluasan bahasa pengaturcaraan yang disokong
  2. Menambah fungsi tambahan atau mengubah suai yang utama.
  3. Pembetulan kesilapan
  4. Peningkatan keselamatan.

Sesetengah aplikasi web, seperti panel kawalan ISPmanager dan VDSmanager, dilaksanakan sebagai modul Apache.

Pelayan Apache mempunyai mekanisme hos maya terbina dalam. Terima kasih kepada ini, adalah mungkin untuk menyampaikan sepenuhnya beberapa tapak (nama domain) pada satu alamat IP, memaparkan kandungannya sendiri untuk setiap satu daripadanya.

Untuk setiap hos maya, anda boleh menentukan tetapan kernel dan modul anda sendiri, hadkan akses kepada keseluruhan tapak atau fail individu. Sesetengah MPM, seperti Apache-ITK, membenarkan anda menjalankan proses httpd untuk setiap hos maya dengan uid dan panduan yang berasingan.

Terdapat juga modul yang membolehkan anda mengambil kira dan mengehadkan sumber pelayan (CPU, RAM, trafik) untuk setiap hos maya.

Integrasi dengan perisian dan bahasa pengaturcaraan lain

Untuk berjaya mengintegrasikan pelayan dengan pelbagai perisian, serta bahasa pengaturcaraan, terdapat modul tambahan:

  • PHP (mod_php)
  • Python (mod python, mod wsgi)
  • Ruby (apache-ruby)
  • Perl (mod perl)
  • ASP (apache-asp)
  • Tcl (rivet)

Apache menyokong mekanisme CGI dan FastCGI, yang membolehkan anda melaksanakan program dalam semua bahasa pengaturcaraan, termasuk C, C++, Lua, sh, Java.

Keselamatan

Keselamatan dalam Apache dijalankan menggunakan pelbagai mekanisme yang, antara lain, mengehadkan akses kepada data. Yang utama ialah:

  • Mengehadkan akses kepada direktori atau fail tertentu.
  • Mekanisme untuk membenarkan pengguna mengakses direktori berdasarkan pengesahan HTTP (mod_auth_basic) dan pengesahan digest (mod_auth_digest).
  • Mengehadkan akses kepada direktori tertentu atau keseluruhan pelayan berdasarkan alamat IP pengguna.
  • Menafikan akses kepada jenis fail tertentu untuk semua atau sesetengah pengguna, contohnya, menafikan akses kepada fail konfigurasi dan fail pangkalan data.
  • Terdapat modul yang melaksanakan kebenaran melalui DBMS atau PAM.

Sesetengah modul MPM mempunyai keupayaan untuk menjalankan setiap proses Apache menggunakan uid dan gid berbeza yang sepadan dengan pengguna dan/atau kumpulan pengguna tersebut.

Terdapat juga mekanisme suexec yang digunakan untuk menjalankan skrip dan aplikasi CGI dengan hak dan kelayakan pengguna.

Untuk melaksanakan penyulitan data yang dihantar antara klien dan pelayan, mekanisme SSL digunakan, dilaksanakan melalui perpustakaan OpenSSL. Sijil X.509 digunakan untuk mengesahkan pelayan web.

Terdapat alat keselamatan luaran yang tersedia, seperti mod_security.

Bahasa

Keupayaan pelayan untuk menentukan lokasi pengguna muncul dalam versi 2.0. Mulai sekarang, semua mesej perkhidmatan, serta mesej ralat dan peristiwa, diterbitkan semula dalam beberapa bahasa menggunakan teknologi SSI.

Anda boleh menggunakan alat pelayan untuk memaparkan halaman yang berbeza untuk pengguna dengan penyetempatan yang berbeza. Apache menyokong banyak pengekodan, termasuk Unicode, yang membolehkan anda menggunakan halaman yang dibuat dalam sebarang pengekodan dan dalam sebarang bahasa.

Pengendalian Acara

Pentadbir boleh menyediakan halaman tersuai dan pengendali untuk semua ralat dan acara HTTP, seperti 404 (Tidak Ditemui) atau 403 (Dilarang). Ia adalah mungkin untuk menjalankan skrip dan memaparkan mesej dalam bahasa yang berbeza.

Bahagian Pelayan Termasuk

Dalam versi 1.3 dan lebih lama, mekanisme Termasuk Bahagian Pelayan telah dilaksanakan, yang membolehkan anda menjana dokumen HTML secara dinamik pada bahagian pelayan.

SSI diuruskan oleh modul mod_include yang disertakan dalam pengedaran Apache asas.

Apache lwn IIS

Perdebatan tentang memilih Apache atau IIS adalah setua perbahasan tentang memilih OS - Linux atau Windows. Oleh itu, sebelum membuat pilihan muktamad, adalah wajar menilai dengan secukupnya kebaikan dan keburukan kedua-duanya.

Kelebihan utama sistem pelayan Apache dan LAMP:

  1. kos rendah kerana tidak perlu membeli lesen perisian;
  2. pengaturcaraan fleksibel terima kasih kepada kod sumber terbuka;
  3. Keselamatan yang Dipertingkatkan Memandangkan Apache direka untuk sistem pengendalian bukan Windows (dan kebanyakan perisian hasad ditulis untuk OS Microsoft), ia sentiasa mempunyai reputasi sebagai lebih selamat daripada IIS Microsoft.

Faedah Perkhidmatan Maklumat Internet (IIS):

  1. Windows dan IIS disokong oleh Microsoft, manakala Apache hanya disokong oleh komuniti pengguna;
  2. IIS menyokong platform .NET Microsoft dan skrip ASPX;
  3. modul membolehkan anda mendayakan penstriman kandungan audio dan video.

Dengan membandingkan kelebihan kedua-dua pelayan ini, beberapa kesimpulan boleh dibuat. Pertama, jika kos lesen adalah kriteria utama semasa memilih pelayan, maka ia pasti bernilai memilih kombinasi LAMP, kerana ia bebas daripada kos pelesenan. Kedua, berdasarkan kriteria keselamatan, Apache sekali lagi mendahului - sistemnya agak lebih cekap. Ketiga, IIS hanya berjalan pada OS Windows dan sebarang variasi dalam pilihan sistem pengendalian sekali lagi akan membawa kepada Apache.

Satu-satunya pilihan di mana IIS pada platform Windows akan menjadi pilihan terbaik ialah alat pentadbiran yang paling mesra pengguna sebagai kriteria utama. Selain itu, skrip yang dilaksanakan mesti bergantung sepenuhnya pada ASPX.

Walau bagaimanapun, adalah mungkin untuk membangunkan penyelesaian yang akan menyokong kerja pada kedua-dua pelayan.

Artikel ini menerangkan pemasangan Apache 2.4 + PHP 5.6 + MySQL 5.6 pada sistem pengendalian Windows 7 / 8 / 8.1 / 10

Sebelum anda meneruskan membaca, perhatikan sama ada anda benar-benar perlu memasang dan mengkonfigurasi semua ini di bawah Windows? Mungkin anda perlu memberi perhatian dan tidak membuang masa dan saraf anda menyediakan perkara yang sama secara langsung dalam Windows? Walau apa pun, baca artikel tentang. Mungkin ia akan menjimatkan bukan sahaja masa, tetapi juga kesihatan.

Arahan ini berguna untuk pembangun WEB pemula yang akan memasang pelayan WEB Apache dengan versi terkini penterjemah PHP pada PC Windows mereka. Sudah tentu, lebih mudah untuk memasang pemasangan seperti Denwer atau menggunakan pemasang dan tidak bimbang tentang tetapan. Walau bagaimanapun, setiap pembangun WEB mesti memahami proses pengendalian pelayan WEB, proses pemasangan dan konfigurasinya.

Jika anda ingin memasang PHP 7, sila rujuk artikel.

Jika dalam proses memasang pelayan mengikut arahan ini anda menghadapi masalah dan masih menganggap diri anda sebagai pembangun WEB, maka ini adalah langkah yang tepat untuk memahami masalah yang timbul, dan tidak menulis dalam komen bahawa arahan itu adalah omong kosong. Arahan berfungsi. Diuji oleh masa dan beratus-ratus pemasangan. Berhati-hati semasa melakukan langkah mudah. Melaksanakan langkah secara manual dan menganalisis situasi, jika ia tidak berkesan, akan menambah kemahiran kepada anda sebagai pembangun. Jika anda bukan pembangun WEB dan tidak merancang untuk menjadi pemaju, cari kaedah pemasangan yang mudah di Internet - arahan ini bukan untuk anda.

Sila ambil perhatian bahawa di bawah Windows XP versi ini VC11 ia akan menjadi mustahil (atau amat sukar) untuk dilancarkan.

Kerja Persediaan

Pastikan anda mempunyai Windows 7 atau lebih baru. Jika anda mempunyai Windows XP, arahan ini tidak akan membantu anda, kerana versi Apache yang diterangkan di sini tidak berfungsi di bawah Windows XP.

Alih keluar semua pelayan WEB yang anda pasang sebelum ini, pergi ke perkhidmatan dan pastikan tiada perkhidmatan Apache atau IIS di sana. Jika anda sudah memasang pelayan web, yang kedua secara selari berkemungkinan besar tidak akan berfungsi sama sekali.

Jika anda mempunyai Skype, pastikan anda melumpuhkan penggunaan port 80 dalam tetapan. Akhirnya, anda perlu memastikan bahawa tiada perkhidmatan menggunakan port 80.

Untuk kerja, adalah sangat diingini untuk mempunyai pengurus fail yang membolehkan anda membuat fail dengan sebarang sambungan, atau, lebih baik lagi, editor kod seperti Teks Sublime atau Notepad++ atau IDE sepenuhnya.

Struktur folder mungkin berbeza, tetapi arahan ini ditulis untuk struktur tertentu dan, jika anda mengikutinya, semuanya dijamin berfungsi.
Sebelum anda mula, buat pada cakera D folder USR, di dalamnya mencipta 5 subfolder: apache, php, tmp, www, log. Tepat sekali. Tanpa menyatakan nombor versi.

Dalam katalog www buat fail indeks (menggunakan pengurus fail atau editor kod) yang diperlukan untuk memastikan semuanya berfungsi:

  • index.html dengan kandungan: Ianya berfungsi!
  • index.php dengan kandungan:

Jika anda tidak mempunyai pengurus fail/editor kod/IDE, muat turun arkib dengan kedua-dua fail ini. Tetapi, jika anda menganggap diri anda seorang pembangun WEB, anda mesti memperoleh alatan tersebut.

Tambahkan pada pembolehubah sistem PATH:

;D:\USR\apache;D:\USR\apache\bin;D:\USR\php;

Nota!

Nombor baris yang diberikan dalam contoh fail konfigurasi mungkin berbeza untuk versi apache dan php yang lain.
Semua arahan, termasuk menyunting fail, mesti dilakukan sebagai Pentadbir.

Memasang Apache 2.4

Walaupun untuk pembangunan mudah dalam PHP tidak memerlukan pelayan WEB yang berasingan (PHP mempunyai pelayan WEB sendiri terbina dalam, yang hampir selalu cukup untuk pembangunan satu projek), ia masih disyorkan untuk memasang dan mengkonfigurasi pelayan WEB Apache , jika hanya kerana pengaturcara mesti mengetahui kehalusan ini. Akhirnya, anda perlu bekerja dengan pelayan WEB dan perlu berurusan dengan konfigurasinya. Jadi mari kita mulakan.

  1. Memuatkan Apache 2.4 binari VC11 untuk sistem anda di pautan http://www.apachelounge.com/download/VC11/ Kemungkinan besar anda mempunyai OS 64-bit, jadi anda memerlukan fail dengan nama seperti httpd-2.4. xx-win64-VC11.zip
  2. Jika anda memerlukan sebarang modul tambahan, anda boleh memuat turunnya di sana (tidak perlu untuk pemasangan asas)
  3. Nyahzip kandungan folder Apache24 daripada arkib yang dimuat turun ke D:\USR\apache. Sila ambil perhatian bahawa dalam D:\USR\apache anda tidak perlu meletakkan folder Apache24 daripada arkib, tetapi kandungannya. Tidak perlu memasang apa-apa.
  4. Tukar nilai dalam fail ServerRoot kepada "d:/USR/apache" ( baris 37) dan nilai DocumentRoot(Dan Direktori) kepada "d:/USR/www" ( baris 242 dan 243). Anda juga harus membatalkan ulasan baris 218 dan menukarnya kepada: Nama Pelayan localhost:80
  5. Kami menukar parameter storan log dalam fail yang sama (cari parameter dan tukar): ErrorLog "D:/USR/log/apache-error.log" CustomLog "D:/USR/log/apache-access.log" biasa
  6. Pasang perkhidmatan Apache (bagi pihak Pentadbir). Buka command prompt sebagai Administrator dan tampal baris berikut di sana: D:\USR\apache\bin\httpd.exe -k install
  7. Kami memantau mesej ralat semasa pemasangan perkhidmatan. Sekiranya semuanya dilakukan dengan betul, sepatutnya tidak ada kesilapan. Jika, selepas melaksanakan baris, baris arahan tidak muncul lagi, maka anda melakukan sesuatu yang salah. Hanya gunakan fungsi salin dan tampal untuk mengelakkan ralat menaip.
  8. Buat pintasan pada desktop untuk D:\USR\apache\bin\ApacheMonitor.exe dan/atau letakkannya dalam permulaan (untuk membuka tetingkap permulaan dalam WIN8, tekan WIN+R, kemudian masukkan shell:Permulaan dan klik OK)
  9. Lancarkan ApacheMonitor. Pintasan akan muncul dalam dulang sistem. Klik kiri padanya dan pilih Apache24 -> Mula.
  10. Dalam pelayar pergi ke http://localhost/ - anda harus melihat Ianya berfungsi!
  11. Sekiranya anda tidak melihat inskripsi sedemikian, kami mengetahui apa yang salah (kami membaca log, google, cuba cari sendiri masalahnya, kerana kami memutuskan untuk memahami selok-belok pelayan web)

Memasang PHP 5.6

  1. Muat turun versi terkini VC11 x86Benang Selamat atau VC11 x64Benang Selamat melalui pautan http://windows.php.net/download/. Sila ambil perhatian bahawa anda memerlukan VC11 dan betul-betul Benang Selamat. Lebar bit hendaklah sama dengan Apache. Fail yang anda perlukan kemungkinan besar akan dinamakan seperti: php-5.6.11-Win32-VC11-x86.zip atau php-5.6.11-Win32-VC11-x64.zip
  2. Mengekstrak kandungan arkib ke dalam D:\USR\php. Seperti Apache, tidak perlu memasang apa-apa.
  3. Untuk memfailkan D:\USR\apache\conf\httpd.conf tambah baris: LoadModule php5_module "d:/USR/php/php5apache2_4.dll" AddHandler application/x-httpd-php .php # Laluan ke fail php.ini PHPIniDir "D:/USR/php"
  4. Dan tukar nilai DirektoriIndex pada index.html index.php (baris 276)
  5. Menggunakan ApacheMonitor kita mulakan semula Apache (Apache24 -> Mulakan Semula)
  6. Kami pergi ke pelayar http://localhost/index.php dan pastikan PHP berfungsi.
  7. Membuat salinan fail D:\USR\php\php.ini-pembangunan Dengan nama D:\USR\php\php.ini
  8. Menggunakan carian, kami mencari, menyahkomen dan menukar parameter: extension_dir = "D:/USR/php/ext" sys_temp_dir = "D:/USR/tmp" extension=php_mysql.dll extension=php_mysqli.dll extension=php_openssl.dll tarikh.zon masa = Eropah/Zaporozhye
  9. Laksanakan pada baris arahan php -m untuk melihat senarai modul yang disambungkan.
  10. Mulakan semula Apache menggunakan ApacheMonitor

Hos Maya dalam Apache

  1. Jika anda menyahpepijat beberapa projek pada komputer anda, anda mungkin memerlukan hos maya (tapak). Sebagai contoh, kami akan mempertimbangkan dua hos maya: s1.localhost Dan s2.localhost. Untuk kemudahan, kami akan membuat folder dengan nama yang sama, yang tidak diperlukan sama sekali dalam sistem sebenar.
  2. Sila ambil perhatian bahawa apabila menggunakan hos maya, parameter DocumentRoot Fail konfigurasi Apache tidak lagi masuk akal. Hos utama pelayan (yang boleh diakses di http://localhost/) adalah sekarang hos maya pertama dalam fail konfigurasi hos maya!
  3. Mula-mula anda perlu menambah baris berikut pada fail c:\Windows\System32\drivers\etc\hosts: 127.0.0.1 s1.localhost 127.0.0.1 s2.localhost

    Ini mesti dilakukan bagi pihak Pentadbir. Adalah dinasihatkan untuk but semula selepas ini, tetapi dalam amalan ini tidak diperlukan. Jika anda tidak boleh menukar fail (kebenaran), anda boleh menyalinnya ke desktop anda, menukarnya dan kemudian menyalinnya semula.

  4. Mencipta folder untuk hos maya D:\USR\www\s1.localhost Dan D:\USR\www\s2.localhost, di mana fail akan ditempatkan. Buat fail dalam setiap folder index.html dengan kandungan S1 Dan S2 sewajarnya (untuk memastikan semuanya berfungsi sebagaimana mestinya)
  5. Kemudian kami membuat folder untuk log: D:\USR\log\s1.localhost Dan D:\USR\log\s2.localhost- log untuk setiap tapak akan disimpan di sini. Sebenarnya, log boleh disimpan dalam satu folder, tetapi saya sudah biasa melakukannya dengan cara ini - ia lebih mudah untuk saya.
  6. Seterusnya, anda perlu mendayakan sokongan untuk hos maya. Dalam fail D:\USR\apache\conf\httpd.conf nyahkomen baris Sertakan conf/extra/httpd-vhosts.conf
  7. Seterusnya kami mengedit fail d:\USR\apache\conf\extra\httpd-vhosts.conf— ia sepatutnya kelihatan seperti ini (setiap hos maya mempunyai blok VirtualHost sendiri): ServerAdmin [e-mel dilindungi] DocumentRoot "D:/USR/www/s1.localhost" Nama Pelayan s1.localhost ServerAlias ​​​​www.s1.localhost ErrorLog "D:/USR/log/s1.localhost/error.log" CustomLog "D:/USR/log /s1 .localhost/access.log" biasa ServerAdmin [e-mel dilindungi] DocumentRoot "D:/USR/www/s2.localhost" ServerName s2.localhost ServerAlias ​​​​www.s2.localhost ErrorLog "D:/USR/log/s2.localhost/error.log" CustomLog "D:/USR/log /s2 .localhost/access.log" biasa
  8. Hos maya pertama s1.localhost kini akan menjadi hos utama sistem, kerana bloknya didahulukan dalam fail konfigurasi, i.e. akan tersedia semasa masuk ke

Apache (Apache HTTP Server), nama pelayan web yang paling terkenal dan meluas yang menyokong protokol HTTP/1.1. Pada asasnya, pelayan web ialah program berkuasa yang direka untuk memproses permintaan http daripada bar alamat penyemak imbas dan mengembalikan fail yang diperlukan berdasarkan permintaan ini. Untuk memudahkan, pelayan web membolehkan anda mewujudkan komunikasi antara penyemak imbas dan pelayan, mengikut skema berikut: penyemak imbas meminta untuk memberikannya fail tapak di alamat, dan pelayan web memberikannya kepadanya. Ini sangat mudah. "Komunikasi" berlaku melalui protokol HTTP.

Pelayan web, termasuk Apache, telah dibangunkan khas untuk tujuan ini, dan tidak satu pelayan atau perisian pengehosan akan dapat berfungsi tanpa pelayan web berjalan menggunakan protokol HTTP.

Baru-baru ini, Apache mempunyai monopoli maya untuk menyelesaikan masalahnya. Sekarang pelayan web Nignix kesuntukan masa. Simbiosis Apache dan Nignix semakin digunakan.

Anda tidak boleh melakukannya tanpa pelayan web dan membina pelayan tempatan. Hari ini, keadaannya ialah Apache digunakan dan, lebih-lebih lagi, mendominasi dalam semua binaan pelayan tempatan, baik untuk Windows dan Linux.

Pengurusan Apache

Untuk membiasakan diri dengan pelayan web Apache, adalah wajar membiasakan diri dengan cara perkhidmatan Apache diuruskan dari pihak pelanggan.

Ada kemungkinan bahawa kemudahan pengurusan luaran perkhidmatan web Apache adalah yang menjadikannya begitu popular (atau ini adalah salah satu sebabnya). Untuk menguruskan perkhidmatan web Apache, terdapat fail khas yang dipanggil .htaccess (dengan titik pada permulaan). Dari segi fungsinya, ia serupa dengan fail robots.txt untuk robot carian. Dengan arahan khas yang ditulis dalam fail ini, anda, sebagai pengguna, boleh mengawal penghantaran halaman di tapak anda, membuat ubah hala, dsb., tanpa menyelidiki perisian pelayan. Selain fail .htaccess, untuk mengawal Apache terdapat fail htpasswd (juga dengan titik pada permulaan) dan juga modul mod_auth dan mod_access.

Tetapi mari kembali ke pelayan tempatan. Untuk memasang (membuat) pelayan tempatan pada komputer anda, anda tidak boleh melakukannya tanpa Apache. Biar saya ingatkan anda sekali lagi bahawa dalam akronim dan LAMP, huruf [A] ialah pelayan web, Apache.

Dalam semua pemasangan pelayan tempatan, seperti Denver, Open-server, XAMPP, dll., pelayan web Apache hadir secara priori. Jika kami memasang pelayan sendiri, itulah yang kami lakukan, Apache perlu dipasang secara bebas.

Apakah versi Apache yang perlu saya pasang?

Apache dibangunkan dalam dua cawangan (versi): Apache 1.3 dan Apache 2.x. Tidak perlu memasang versi lama 1.3, jadi kami sedang bekerja dengan versi 2.x.

Sekarang, bahagian yang paling mengelirukan. Anda tahu bahawa hampir mana-mana program boleh dipasang dalam dua cara:

  • Menggunakan pemasang automatik (pemasang), fail ;
  • Secara langsung, dengan memuat naik direktori dan fail program ke direktori yang dikehendaki pada cakera.

Dengan Apache keadaannya adalah seperti berikut:

  • Versi terkini Apache 2.4.26 (dikeluarkan 2017-06-19) hanya tersedia dalam pilihan pemasangan manual (pautan di bawah);
  • Versi pemasang mengandungi versi terkini Apache 2.2.25.

Itu sahaja! Perkenalan pertama dengan Apache berlaku. Dalam artikel berikut, saya akan memberitahu anda cara memasang kedua-dua versi Apache pada komputer tempatan anda.

Akhirnya, pautan yang diperlukan

Navigasi pada laman web pelayan web Apache (http) agak mengelirukan, jadi saya akan menyediakan pautan yang diperlukan:

  • Tapak pelayan web Apache (http://httpd.apache.org/).
  • Muat turun pelayan web Apache ( http://httpd.apache.org/download.cgi)
  • Muat turun versi Stabil - versi terkini: 2.4.26 (dikeluarkan 2017-06-19) (untuk Windows).
  • Muat turun isu lapuk - siri 2.2. 2.2.32 (dikeluarkan 2017-01-13)
  • Versi binari: https://archive.apache.org/dist/httpd/binaries/win32/ (2013-07-10)

Apa itu Apache? E kemudian perisian sumber terbuka, pelayan web, yang menguasai kira-kira 46% tapak web di seluruh dunia. Nama rasmi ialah Pelayan HTTP Apache, diselenggara dan dibangunkan oleh Yayasan Perisian Apache.

Pelayan web membenarkan pemilik laman web untuk menyampaikan kandungan mereka di Internet, seperti yang dimaksudkan dengan nama "pelayan web". Apache ialah salah satu pelayan web tertua dan paling dipercayai dengan versi pertama dikeluarkan lebih daripada 20 tahun yang lalu pada tahun 1995.

Apabila seseorang ingin melawat tapak web, mereka memasukkan nama domain ke dalam bar alamat penyemak imbas mereka. Pelayan web kemudian menghantar fail yang diminta sebagai utusan maya.

Di Hostinger, infrastruktur kami menggunakan Apache selari dengan NGINX, satu lagi pelayan web popular. Gabungan ini membolehkan kami memanfaatkan sepenuhnya kedua-duanya. Ini sangat meningkatkan prestasi dengan mengimbangi kelemahan seseorang dengan kekuatan yang lain.

Pemprosesan fail, pemprosesan pangkalan data, mel dan pelayan web menggunakan pelbagai jenis perisian pelayan. Setiap aplikasi ini boleh mengakses fail yang disimpan pada pelayan sebenar dan menggunakannya untuk tujuan yang berbeza.

Tugas pelayan web adalah untuk melayani laman web di Internet. Untuk melakukan ini, ia bertindak sebagai perantara antara komputer pelayan dan komputer klien. Ia mengambil kandungan daripada pelayan untuk setiap permintaan pengguna dan menghantarnya ke rangkaian.

Cabaran terbesar pelayan web adalah untuk melayani pelbagai permintaan daripada ramai pengguna secara serentak. Pelayan web memproses fail yang ditulis dalam bahasa pengaturcaraan yang berbeza, seperti PHP, Python, Java dan lain-lain.

Ia mengubahnya menjadi fail HTML statik dan menyampaikannya kepada penyemak imbas pengguna. Apabila anda mendengar istilah pelayan web, anggap ia sebagai alat untuk komunikasi antara pelayan dan pelanggan.

Bagaimanakah pelayan web Apache berfungsi?

Walaupun Apache dipanggil pelayan web, sebenarnya ia bukanlah pelayan, tetapi program yang berjalan pada pelayan. Tugasnya adalah untuk mewujudkan sambungan antara pelayan dan penyemak imbas pelawat (Firefox, Google Chrome, Safari, dll.) sambil menghantar fail berulang-alik antara mereka (struktur pelayan pelanggan). Apache ialah perisian merentas platform, yang bermaksud ia berfungsi dengan baik pada kedua-dua pelayan Unix dan Windows.

Apabila pelawat ingin memuatkan halaman di tapak anda, seperti halaman utama anda atau halaman "Perihal Kami", penyemak imbas mereka menghantar permintaan kepada pelayan anda dan Apache mengembalikan respons dengan semua fail yang diminta (teks, imej, dsb.) . Pelayan dan pelanggan berkomunikasi menggunakan HTTP dan Apache bertanggungjawab untuk sambungan yang lancar dan selamat antara kedua-dua mesin.

Apache sangat boleh disesuaikan kerana ia mempunyai struktur modular. Modul membenarkan pentadbir pelayan mendayakan atau melumpuhkan fungsi tambahan. Apache mempunyai modul untuk keselamatan, caching, penyuntingan URL, pengesahan kata laluan dan lain-lain. Anda boleh menetapkan konfigurasi anda sendiri melalui fail .htaccess, yang merupakan fail tetapan untuk Apache dan disokong oleh semua rancangan Hostinger.

Apache dan pelayan web lain

Selain Apache, terdapat beberapa pelayan web lain. Setiap aplikasi pelayan web dicipta untuk tujuan yang berbeza. Walaupun Apache adalah yang paling banyak digunakan, terdapat beberapa alternatif dan pesaing.

Inilah dia - hebat dan dahsyat. Sepanjang hayatnya, ia telah merosakkan banyak pembangun web pemula yang kehilangan nyawa mereka semasa menyediakan fail konfigurasinya. 🙂 Tetapi anda dan saya adalah orang yang kuat saraf dan perut keluli - jadi mari kita pergi.

Pemasangan dan persediaan awal

Buka pek arkib pengedaran ke dalam direktori C:\Apache2.

Buka fail "C:\Apache2\conf\httpd.conf" dalam editor teks, yang merupakan fail konfigurasi utama untuk pelayan Apache.

Nah, sekarang tunggu. Wanita, warga emas dan kanak-kanak diminta untuk tidak membaca lebih lanjut. Penulis tidak bertanggungjawab terhadap keadaan mental orang yang membaca artikel itu hingga akhir. 🙂

Mengedit fail httpd.conf

  1. Untuk memuatkan modul mod_rewrite, cari dan nyahkomen (alih keluar simbol "#" pada permulaan baris) baris ini:
    LoadModule rewrite_module modules/mod_rewrite.so
  2. Untuk memuatkan penterjemah PHP, anda perlu menambah baris pada penghujung blok pemuatan modul:
    LoadModule php5_module "C:/php/php5apache2_2.dll"
  3. Tentukan direktori yang mengandungi fail konfigurasi PHP dengan menambah baris berikut di bawah:
    PHPIniDir "C:/php"
  4. Cari dan nyahkomen baris:
    Nama Pelayan www.example.com:80
    Editnya seperti berikut, tetapkan nama pelayan asal:
    Nama Pelayan localhost:80
  5. Cari baris:
    DocumentRoot "c:/Apache2/htdocs"
    Tetapkan direktori pengurusan tapak akar (kami akan menciptanya sedikit kemudian):
    DocumentRoot "C:/apache"
  6. Cari blok ini:

    Pilihan FollowSymLinks
    AllowOverride Tiada
    Perintah tolak, benarkan
    Nafikan dari semua

    Dan gantikannya dengan yang berikut:

    Pilihan Termasuk Indeks FollowSymLinks
    AllowOverride Semua
    Izinkan dari semua
  7. Alih keluar atau ulas blok kawalan direktori asal (kami tidak memerlukannya), yang tanpa ulasan kelihatan seperti ini:

    Indeks Pilihan FollowSymLinks
    AllowOverride Tiada
    Perintah benarkan, tolak
    Izinkan dari semua
  8. Cari blok:

    DirectoryIndex index.html

    Gantikannya dengan:

    DirectoryIndex index.html index.htm index.shtml index.php
  9. Cari baris:
    ErrorLog "logs/error.log"
    Gantikan dengan yang berikut (dalam kes ini, lebih mudah untuk melihat fail ralat pelayan global):
    ErrorLog "C:/apache/error.log"
  10. Cari baris:
    CustomLog "logs/access.log" biasa
    Bertukar kepada:
    CustomLog "C:/apache/access.log" biasa
  11. Untuk mengendalikan SSI (pembolehan sisi pelayan), baris berikut terletak di dalam blok , anda perlu mencari dan membatalkan ulasan:
    AddType text/html .shtml
    AddOutputFilter TERMASUK .shtml
  12. Tambahkan di bawah dalam blok yang sama , dua baris:
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
  13. Akhir sekali, cari dan nyahkomen baris:
    Sertakan conf/extra/httpd-mpm.conf
    Sertakan conf/extra/httpd-autoindex.conf
    Sertakan conf/extra/httpd-vhosts.conf
    Sertakan conf/extra/httpd-manual.conf
    Sertakan conf/extra/httpd-default.conf

Simpan perubahan dan tutup fail "httpd.conf".

Sekarang buka fail "C:\Apache2\conf\extra\httpd-vhosts.conf" dan buat perubahan berikut di dalamnya.

Blok contoh hos maya sedia ada perlu dialih keluar dan hanya yang berikut dimasukkan:
NameVirtualHost *:80


DocumentRoot "C:/apache/localhost/www"
ServerName localhost
ErrorLog "C:/apache/localhost/error.log"
CustomLog "C:/apache/localhost/access.log" biasa

Simpan perubahan dan tutup fail "httpd-vhosts.conf".

Menyediakan fail konfigurasi selesai, kini anda perlu memasang perkhidmatan Apache2.2.

Memasang perkhidmatan Apache2.2 dalam gambar

Lancarkan baris arahan dan masukkan "C:\Apache2\bin\httpd.exe -k install"

Inilah yang patut kita lihat apabila perkhidmatan Apache2.2 berjaya dipasang.

Jika semuanya berjalan lancar, kami teruskan - sediakan pelancaran manual perkhidmatan Apache2.2, yang mana kami mengikuti laluan: "Mula" → "Panel Kawalan" → "Alat Pentadbiran" → "Perkhidmatan", dalam pengurusan perkhidmatan tetingkap yang terbuka, pilih baris "Apache2.2" dan klik dua kali padanya, kemudian dalam tab "Umum" pilih permulaan perkhidmatan manual - "Jenis permulaan: Manual" "(Jenis permulaan: manual). Ini mesti dilakukan untuk mengelakkan perkhidmatan yang tidak diperlukan daripada memuatkan sistem. Memandangkan komputer rumah digunakan bukan sahaja untuk pembangunan web, tetapi juga untuk banyak keperluan lain, memulakan dan menghentikan perkhidmatan yang digunakan secara manual adalah paling sesuai.

Mencipta struktur direktori hos maya

Dalam akar cakera anda perlu membuat direktori "apache" - ia akan mengandungi hos maya anda (domain), fail log ralat global "error.log" (dicipta oleh program apabila anda mula-mula memulakannya, secara automatik), fail capaian global “access.log” (dicipta secara automatik). Dalam direktori "apache" kami mencipta satu lagi folder kosong - "localhost", di mana, seterusnya, kami mencipta folder "www", di bahagian kedua kami perlu menyimpan barangan kami dalam bentuk skrip tempatan. Struktur direktori yang kelihatan aneh ini ditentukan oleh struktur direktori yang serupa dalam sistem Unix, dan bertujuan untuk memudahkan pemahaman dan penggunaannya pada masa hadapan.

Contoh mencipta hos maya

Jika anda perlu memasang hos maya anda sendiri, lakukan perkara berikut:

Buka fail "httpd-vhosts.conf" dan buat blok di dalamnya dengan lebih kurang kandungan berikut:

# Folder di mana akar hos anda akan berada.
DocumentRoot "C:/apache/test.ru/www"
# Domain di mana anda boleh mengakses hos maya.
ServerName test.ru
# Alias ​​​​(nama tambahan) domain.
ServerAlias ​​www.test.ru
# Fail di mana ralat akan ditulis.
ErrorLog "C:/apache/test.ru/error.log"
# Fail log akses hos.
CustomLog "C:/apache/test.ru/access.log" biasa

Kemudian, dalam direktori "apache", buat folder "test.ru" (sama seperti itu, dengan titik), di mana, seterusnya, buat folder "www".

Langkah seterusnya dalam mencipta hos maya ialah mengubah suai fail C:\WINDOWS\system32\drivers\etc\hosts sistem pengendalian. Buka fail ini dan tambahkan dua baris padanya:
127.0.0.1 test.ru
127.0.0.1 www.test.ru

Sekarang mulakan pelayan Apache dengan melaksanakan "C:\Apache2\bin\httpd.exe -k start" pada baris arahan, buka penyemak imbas, masukkan "test.ru" atau "www.test.ru" dalam bar alamat dan anda akan mendapati diri anda dalam hos maya anda. Hanya berhati-hati, kini anda boleh pergi ke tapak asal dengan nama hos maya ("www.test.ru", jika ada) hanya dengan mengulas atau memadam baris: "127.0.0.1 www.test.ru ” dalam fail “ hos” yang disebutkan di atas.

Dokumentasi Apache, dengan pelayan berjalan, tersedia di http://localhost/manual/

Anda boleh menghentikan Apache dengan menjalankan "C:\Apache2\bin\httpd.exe -k stop" pada baris arahan. Jika anda perlu memulakan semula Apache, jalankan "C:\Apache2\bin\httpd.exe -k restart" pada baris arahan.

Pemasangan dan konfigurasi pelayan web Apache telah selesai.

Mencipta fail kelompok untuk memulakan dan menghentikan perkhidmatan

Setuju bahawa mengedit fail "hos" secara manual setiap kali anda memulakan perkhidmatan adalah tidak mudah, jadi untuk permulaan perkhidmatan Apache, MySQL yang lebih mudah dan serentak dan menukar fail "hos", kami akan mencipta dua fail kelompok: untuk memulakan dan berhenti, yang akan melaksanakan semua kerja rutin secara automatik.

Apabila menggunakan hos maya, anda perlu mencipta dua fail dalam direktori C:\apache: vhosts-off.txt – mengandungi kandungan awal fail “hosts” dan vhosts-on.txt – mengandungi semua hos maya. Sila ambil perhatian bahawa apabila mencipta hos maya baharu, anda perlu menambahkannya pada fail vhosts-on.txt dan bukan pada C:\WINDOWS\system32\drivers\etc\hosts. Lihat contoh di bawah.

Fail vhosts-off.txt (boleh mengandungi satu baris):
127.0.0.1 localhost

Contoh fail vhosts-on.txt dengan hos maya www.test.ru dan test.ru:

127.0.0.1 localhost
127.0.0.1 www.test.ru
127.0.0.1 test.ru

Dalam direktori C:\apache yang sama, cipta dua fail kelompok: start-webserver.bat – untuk memulakan perkhidmatan dan menggantikan fail “hosts”, dan stop-webserver.bat – untuk menghentikan perkhidmatan dan mengosongkan fail “hosts”.

Lancarkan fail start-webserver.bat:

@echo off echo. jika tidak wujud C:\apache\vhosts-on.txt goto no_vhosts echo Cipta hos maya: salin /v /y C:\apache\vhosts-on.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET mulakan Apache2.2 NET mulakan MySQL

Hentikan fail stop-webserver.bat:

@echo off echo. jika tidak wujud C:\apache\vhosts-off.txt goto no_vhosts echo Pulihkan fail hos: salin /v /y C:\apache\vhosts-off.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET hentikan Apache2.2 NET hentikan MySQL

Jika anda tidak menggunakan hos maya atau ingin memulakan perkhidmatan tanpa menggantikan fail “hosts”, cuma alih keluar fail vhosts-on.txt dan vhosts-off.txt daripada direktori C:\apache.

Pada masa yang sama dengan perkhidmatan, adalah mudah untuk menjalankan program Apache Monitor, yang memaparkan status pelayan Apache dalam dulang sistem, yang mana anda boleh membuat fail kelompok lain "start-webserver-monitor.bat", yang kandungannya adalah serupa dengan fail "start-webserver.bat" dengan penambahan akhir baris seterusnya:

mulakan "" "C:\Apache2\bin\ApacheMonitor.exe"

Sekarang untuk menjalankan keseluruhan kit alat anda perlu menjalankan fail "start-webserver-monitor.bat", atau "start-webserver.bat", dan untuk menghentikannya "stop-webserver.bat". Jika anda mahu, anda boleh menamakan semula fail ini, mengalihkannya ke mana-mana lokasi lain daripada folder “C:\apache” atau mencipta pintasan ke fail ini, sebagai contoh, ke desktop.

Artikel asal: http://php-myadmin.ru/learning/instrument-apache.html