Jadilah host Anda sendiri atau instal Apache di platform Windows. Menginstal dan mengkonfigurasi server Apache

Artikel ini menjelaskan tentang instalasi Apache 2.4 + PHP 5.6 + MySQL 5.6 pada sistem operasi sistem jendela 7 / 8 / 8.1 / 10

Sebelum Anda melanjutkan membaca, perhatikan apakah Anda benar-benar perlu menginstal dan mengkonfigurasi semua ini di Windows? Mungkin Anda harus memperhatikan dan tidak membuang waktu dan saraf Anda untuk menyiapkan hal yang sama langsung di Windows? Bagaimanapun, baca artikel tentang. Mungkin ini tidak hanya akan menghemat waktu Anda, tetapi juga kesehatan Anda.

Instruksi ini akan berguna bagi pengembang WEB pemula yang akan menginstal server WEB Apache dengan juru bahasa di PC Windows mereka PHP terbaru versi. Tentu saja, jauh lebih mudah untuk menginstal perakitan seperti Denwer atau menggunakan installer dan tidak mengkhawatirkan pengaturannya. Namun, setiap pengembang WEB terpaksa memahami proses pengoperasian server WEB, proses instalasi dan konfigurasinya.

Jika Anda ingin menginstal PHP 7, silakan merujuk ke artikel.

Jika dalam proses perakitan server sesuai petunjuk ini Anda mengalami masalah dan masih menganggap diri Anda sebagai pengembang WEB, maka langkah yang tepat adalah memahami masalah yang muncul, dan tidak menulis di komentar bahwa instruksi tersebut omong kosong. Instruksinya berfungsi. Diuji oleh waktu dan ratusan instalasi. Berhati-hatilah saat melakukan langkah sederhana. Melakukan langkah-langkah secara manual dan menganalisis situasi, jika tidak berhasil, akan menambah keterampilan Anda sebagai pengembang. Jika Anda bukan pengembang WEB dan tidak berencana menjadi pengembang WEB, carilah metode instalasi yang mudah di Internet - instruksi ini bukan untukmu.

Harap dicatat bahwa pada Windows XP versi ini VC11 tidak mungkin (atau sangat sulit) untuk diluncurkan.

Pekerjaan persiapan

Pastikan Anda memiliki Windows 7 atau lebih baru. Jika Anda memiliki Windows XP, petunjuk ini tidak akan membantu Anda, karena versi Apache yang dijelaskan di sini tidak berfungsi pada Windows XP.

Hapus semua server WEB yang Anda instal sebelumnya, buka layanan dan pastikan tidak ada layanan Apache atau IIS di sana. Jika Anda sudah menginstal server web, kemungkinan besar server web kedua tidak akan berfungsi sama sekali.

Jika Anda memiliki Skype, pastikan untuk menonaktifkan penggunaan port 80 di pengaturan. Pada akhirnya, Anda perlu memastikan bahwa tidak ada layanan yang menggunakan port 80.

Untuk pekerjaan, sangat diinginkan untuk memiliki pengelola file yang memungkinkan Anda membuat file dengan ekstensi apa pun, atau, lebih baik lagi, editor kode seperti Sublime Text atau Notepad++ atau IDE lengkap.

Struktur folder mungkin berbeda, tetapi instruksi ini ditulis untuk struktur tertentu dan, jika Anda mengikutinya, semuanya dijamin berfungsi.
Sebelum memulai, buat di disk D map USR, di dalamnya buat 5 subfolder: apache, php, tmp, www, mencatat. Itu benar. Tanpa menentukan nomor versi.

Di katalog www membuat file indeks (menggunakan manajer file atau editor kode), yang diperlukan untuk memeriksa apakah semuanya berfungsi:

  • indeks.html dengan konten: Itu berhasil!
  • indeks.php dengan konten:

Jika Anda tidak memiliki pengelola file/editor kode/IDE, unduh arsip dengan kedua file ini. Namun, jika Anda menganggap diri Anda seorang pengembang WEB, Anda harus memperoleh alatnya.

Tambahkan ke variabel sistem PATH:

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

Catatan!

Nomor baris yang diberikan dalam contoh file konfigurasi mungkin berbeda untuk versi apache dan php lainnya.
Semua perintah, termasuk mengedit file, harus dilakukan sebagai Administrator.

Menginstal Apache 2.4

Meskipun untuk pengembangan sederhana di PHP tidak diperlukan server WEB terpisah (PHP memiliki server WEB bawaannya sendiri, yang hampir selalu cukup untuk pengembangan satu proyek), tetap disarankan untuk menginstal dan mengkonfigurasi server WEB . server apache, setidaknya karena programmer wajib mengetahui seluk-beluk ini. Pada akhirnya, Anda harus bekerja dengan server WEB dan harus menangani konfigurasinya. Jadi mari kita mulai.

  1. Memuat Biner Apache 2.4 VC11 untuk sistem Anda di tautan http://www.apachelounge.com/download/VC11/ Kemungkinan besar Anda memiliki OS 64-bit, jadi Anda memerlukan file dengan nama seperti httpd-2.4. xx-win64-VC11.zip
  2. Jika Anda membutuhkannya modul tambahan, mereka dapat diunduh di sana (untuk instalasi dasar tidak perlu)
  3. Buka zip isi folder Apache24 dari arsip yang diunduh ke D:\USR\Apache. Harap dicatat bahwa di D:\USR\apache Anda tidak perlu meletakkan folder Apache24 dari arsip, tetapi isinya. Tidak perlu menginstal apa pun.
  4. Ubah nilai dalam file ServerRoot ke "d:/USR/apache" ( baris 37) dan nilai DokumenRoot(Dan Direktori) ke "d:/USR/www" ( baris 242 dan 243). Anda juga harus menghapus komentar pada baris 218 dan mengubahnya menjadi: Nama Server localhost:80
  5. Kami mengubah parameter penyimpanan log dalam file yang sama (temukan parameter dan ubah): ErrorLog "D:/USR/log/apache-error.log" CustomLog "D:/USR/log/Apache-access.log" common
  6. Instal layanan Apache (atas nama Administrator). Pembukaan baris perintah atas nama Administrator dan masukkan baris berikut di sana: D:\USR\apache\bin\httpd.exe -k install
  7. Kami memantau pesan kesalahan selama instalasi layanan. Jika semuanya dilakukan dengan benar, seharusnya tidak ada kesalahan. Jika, setelah menjalankan baris, baris perintah tidak muncul lagi, maka Anda melakukan kesalahan. Cukup gunakan fungsi salin dan tempel untuk menghindari kesalahan pengetikan.
  8. Buat pintasan di desktop untuk D:\USR\apache\bin\ApacheMonitor.exe dan/atau letakkan di startup (untuk membuka jendela startup di WIN8, tekan WIN+R, lalu enter cangkang: Memulai dan klik oke)
  9. Luncurkan ApacheMonitor. Pintasan akan muncul di baki sistem. Klik kiri padanya dan pilih Apache24 -> Mulai.
  10. Di browser, buka http://localhost/ - Anda akan melihatnya Itu berhasil!
  11. Jika Anda tidak melihat tulisan seperti itu, kami mencari tahu apa yang salah (kami membaca log, google, coba cari tahu sendiri masalahnya, karena kami memutuskan untuk memahami seluk-beluk server web)

Menginstal PHP 5.6

  1. Unduh versi terbaru VC11x86Benang Aman atau VC11x64Benang Aman melalui tautan http://windows.php.net/download/. Harap dicatat bahwa Anda membutuhkannya VC11 dan tepatnya Benang Aman. Lebar bit harus sama dengan Apache. File yang Anda perlukan kemungkinan besar diberi nama seperti: php-5.6.11-Win32-VC11-x86.zip atau php-5.6.11-Win32-VC11-x64.zip
  2. Mengekstrak isi arsip ke dalam D:\USR\php. Seperti halnya Apache, tidak perlu menginstal apa pun.
  3. Untuk mengajukan D:\USR\apache\conf\httpd.conf tambahkan baris: LoadModule php5_module "d:/USR/php/php5apache2_4.dll" AddHandler application/x-httpd-php .php # Path ke file php.ini PHPIniDir "D:/USR/php"
  4. Dan ubah nilainya Indeks Direktori pada indeks.html indeks.php (baris 276)
  5. Menggunakan ApacheMonitor kita me-restart Apache (Apache24 -> Restart)
  6. Kami pergi ke browser http://localhost/index.php dan memastikan bahwa PHP berfungsi.
  7. Membuat salinan file D:\USR\php\php.ini-pengembangan dengan nama D:\USR\php\php.ini
  8. Dengan menggunakan pencarian, kami menemukan, menghapus komentar, dan mengubah 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 tanggal.zona waktu = Eropa/Zaporozhye
  9. Jalankan di baris perintah php -m untuk melihat daftar modul yang terhubung.
  10. Mulai ulang Apache menggunakan ApacheMonitor

Host Virtual di Apache

  1. Jika Anda men-debug beberapa proyek di komputer Anda, Anda mungkin memerlukannya host virtual(situs). Sebagai contoh, kita akan mempertimbangkan dua host virtual: s1.localhost Dan s2.localhost. Untuk kenyamanan, kami akan membuat folder dengan nama yang sama, yang sama sekali tidak diperlukan dalam sistem nyata.
  2. Harap dicatat bahwa saat menggunakan host virtual, parameternya DokumenRoot File konfigurasi Apache tidak lagi masuk akal. Host utama server (yang dapat diakses di http://localhost/) sekarang host virtual pertama di file konfigurasi host virtual!
  3. Pertama, Anda perlu menambahkan baris berikut ke file c:\Windows\System32\drivers\etc\hosts: 127.0.0.1 s1.localhost 127.0.0.1 s2.localhost

    Ini harus dilakukan atas nama Administrator. Dianjurkan untuk melakukan boot ulang setelah ini, tetapi dalam praktiknya hal ini tidak diperlukan. Jika Anda tidak dapat mengubah file (izin), Anda dapat menyalinnya ke desktop, mengubahnya, lalu menyalinnya kembali.

  4. Membuat folder untuk host virtual D:\USR\www\s1.localhost Dan D:\USR\www\s2.localhost, di mana file akan ditempatkan. Buat file di setiap folder indeks.html dengan konten S1 Dan S2 sesuai (untuk memeriksa apakah semuanya berfungsi sebagaimana mestinya)
  5. Lalu kami membuat folder untuk log: D:\USR\log\s1.localhost Dan D:\USR\log\s2.localhost- log untuk setiap situs akan disimpan di sini. Sebenarnya log bisa disimpan dalam satu folder, tapi saya sudah terbiasa melakukannya dengan cara ini - lebih nyaman bagi saya.
  6. Selanjutnya, Anda perlu mengaktifkan dukungan untuk host virtual. Dalam berkas D:\USR\apache\conf\httpd.conf batalkan komentar pada baris tersebut Sertakan conf/extra/httpd-vhosts.conf
  7. Selanjutnya kita edit filenya d:\USR\apache\conf\extra\httpd-vhosts.conf— tampilannya akan seperti ini (setiap host virtual memiliki blok VirtualHost sendiri): Admin Server [dilindungi email] DocumentRoot "D:/USR/www/s1.localhost" Nama Server s1.localhost ServerAlias ​​​​www.s1.localhost ErrorLog "D:/USR/log/s1.localhost/error.log" CustomLog "D:/USR/log /s1 .localhost/access.log" umum Admin Server [dilindungi email] DocumentRoot "D:/USR/www/s2.localhost" Nama Server s2.localhost ServerAlias ​​​​www.s2.localhost ErrorLog "D:/USR/log/s2.localhost/error.log" CustomLog "D:/USR/log /s2 .localhost/access.log" umum
  8. Tuan rumah virtual pertama s1.localhost sekarang akan menjadi host utama sistem, karena bloknya berada di urutan pertama dalam file konfigurasi, mis. akan tersedia saat masuk ke

Apache adalah server web gratis paling populer. Pada tahun 2016, ini digunakan di 33% dari seluruh situs Internet, yaitu sekitar 304 miliar situs. Server web ini dikembangkan pada tahun 1995 sebagai pengganti server tom NCSA yang populer dan memperbaiki banyak masalahnya. Rumor mengatakan bahwa namanya berasal dari tambal sulam, karena dia sedang memperbaiki kesalahan NCSA. Sekarang, ini adalah program lintas platform yang mendukung Windows, Linux dan MacOS dan memberikan fleksibilitas, penyesuaian, dan fungsionalitas yang memadai. Program ini memiliki struktur modular, yang memungkinkan Anda memperluas fungsinya hampir tanpa batas menggunakan modul.

Anda dapat menginstal Apache di Linux menggunakan beberapa perintah, tetapi program ini menyediakan sejumlah besar pengaturan yang dapat diubah, serta modul yang, jika diaktifkan, akan bekerja lebih baik. Artikel ini akan membahas instalasi dan konfigurasi Apache, kami akan menggunakan Ubuntu sebagai sistem utama, tetapi Anda dapat mengulangi langkah-langkah ini di distribusi lainnya. Kami akan melihat tidak hanya instalasi program itu sendiri, tetapi juga cara mengkonfigurasinya, menyiapkan host virtual Apache, serta modul yang paling berguna.

Pada saat ini, paling banyak versi baru program 2.4; oleh karena itu, pengaturan Apache 2.4 akan dipertimbangkan. Seperti yang sudah saya katakan, di program Linux menginstal secara harfiah dalam beberapa perintah. Untuk menginstal di Ubuntu, perbarui sistem ke versi terbaru terlebih dahulu:

sudo pembaruan yang tepat
$ sudo tepat peningkatan

Kemudian instal apache2:

sudo tepat instal apache2

Di distribusi lain, paket program disebut ini atau httpd dan menginstalnya tidak akan menimbulkan kesulitan bagi Anda.

Setelah instalasi selesai, Anda perlu menambahkan server web ke startup agar tidak memulainya secara manual setelah menyalakan komputer:

sudo systemctl aktifkan apache2

Pengaturan Apache

Lewatlah sudah hari-hari ketika konfigurasi Apache disimpan dalam satu file. Tapi itu benar: ketika semuanya didistribusikan di direktorinya sendiri, lebih mudah untuk menavigasi file konfigurasi.

Semua pengaturan terdapat di folder /etc/Apache/:

  • Mengajukan /etc/apache2/apache2.conf bertanggung jawab atas pengaturan dasar
  • /etc/Apache2/conf-tersedia/* - pengaturan tambahan server web
  • /etc/Apache2/mods-tersedia/*- pengaturan modul
  • /etc/apache2/situs-tersedia/*- pengaturan host virtual
  • /etc/apache2/ports.conf- port tempat apache berjalan
  • /etc/apache2/envvars

Seperti yang Anda perhatikan, ada dua folder untuk conf, mods dan site. Ini tersedia dan diaktifkan. Saat Anda mengaktifkan modul atau host, tautan simbolik dibuat dari folder yang tersedia ke folder aktifkan. Oleh karena itu, sebaiknya lakukan pengaturan pada folder yang tersedia. Secara umum, Anda dapat melakukannya tanpa folder-folder ini, mengambil semuanya dan membuang semuanya ke dalam satu file dengan cara lama, dan semuanya akan berfungsi, tetapi tidak ada yang melakukan itu sekarang.

Pertama mari kita lihat berkas utama konfigurasi:

vi /eta/apache2/apache2.conf

Batas waktu- menunjukkan berapa lama server akan mencoba melanjutkan transmisi atau penerimaan data yang terputus. 160 detik sudah cukup.

Tetap Hidup- Sangat parameter yang berguna, memungkinkan Anda mentransfer beberapa file dalam satu koneksi, misalnya tidak hanya halaman html itu sendiri, tetapi juga file gambar dan css.

Permintaan MaxKeepAlive 100 - kuantitas maksimum permintaan per koneksi, semakin banyak semakin baik.

KeepAliveTimeout 5- batas waktu koneksi habis, biasanya 5-10 detik sudah cukup untuk memuat suatu halaman, jadi Anda tidak perlu mengaturnya lagi, tetapi Anda juga tidak perlu memutus koneksi sebelum semua data dimuat.

Pengguna, Grup- pengguna dan grup yang atas nama program akan dijalankan.

Pencarian Nama Host- catat nama domain di log daripada alamat IP, lebih baik nonaktifkan untuk mempercepat pekerjaan.

Tingkat Log- tingkat kesalahan pencatatan. Secara default, peringatan digunakan, tetapi untuk membuat log terisi lebih lambat, aktifkan saja kesalahan

Termasuk- semua arahan include bertanggung jawab untuk menghubungkan file konfigurasi yang dibahas di atas.

Arahan direktori bertanggung jawab untuk mengatur hak akses ke direktori tertentu di sistem file. Sintaksnya di sini adalah:


Nilai parameter

Opsi dasar berikut tersedia di sini:

Izinkan Timpa- menunjukkan apakah file .htaccess harus dibaca dari direktori ini; ini adalah file pengaturan yang sama dan memiliki sintaks yang sama. Semua - izinkan semuanya, Tidak ada - jangan baca file ini.

DokumenRoot- mengatur dari folder mana dokumen harus diambil untuk ditampilkan kepada pengguna

Pilihan- menunjukkan fitur server web mana yang diperbolehkan di folder ini. Misalnya, Semua - izinkan semuanya, FollowSymLinks - ikuti tautan simbolik, Indeks - menampilkan konten direktori jika tidak ada file indeks.

Memerlukan- menetapkan pengguna mana yang memiliki akses ke direktori ini. Wajibkan semua ditolak - tolak semua, Wajibkan semua dikabulkan - izinkan semua orang. Anda dapat menggunakan direktif pengguna atau grup alih-alih semua untuk menentukan pengguna secara eksplisit.

Memesan- memungkinkan Anda mengontrol akses ke direktori. Menerima dua nilai: Izinkan,Tolak - izinkan untuk semua orang kecuali yang ditentukan atau Tolak,Izinkan - tolak untuk semua orang kecuali yang ditentukan..ru.

Semua arahan ini tidak digunakan di sini, karena kami senang dengan nilai defaultnya, tetapi dalam file .htaccess mereka bisa sangat berguna.

Yang tersisa adalah file /etc/Apache2/ports.conf:

Ini hanya berisi satu direktif, Dengar, yang memberi tahu program pada port mana ia harus bekerja.

File terakhir adalah /etc/apache2/envvars, kemungkinan besar Anda tidak akan menggunakannya, ini berisi variabel yang dapat digunakan di file konfigurasi lainnya.

Menyiapkan server Apache melalui htaccess

File .htaccess memungkinkan Anda mengonfigurasi server web Ubuntu agar berfungsi di direktori tertentu. Semua instruksi yang ditentukan dalam file ini dijalankan seolah-olah dibungkus dalam sebuah tag jika mereka ada di file utama.

Penting untuk dicatat bahwa agar server dapat membaca instruksi dari .htaccess, pengaturan untuk folder ini di file host utama atau virtual tidak boleh berisi AllowOverride Tidak Ada agar semua pengaturan berfungsi yang Anda perlukan Izinkan Timpa Semua.

Jika tidak, konfigurasi server Apache apa pun dapat dilakukan di sini, mulai dari mengaktifkan modul hingga sekadar mengubah akses folder. Karena kita telah mempertimbangkan semua parameternya, mari kita berikan beberapa contoh:

Perintah Tolak, Izinkan
Tolak dari semua

Menolak akses semua orang ke folder ini, penting untuk diterapkan pada folder konfigurasi. Paling sering, .htaccess digunakan untuk bekerja dengan modul mod_rewrite, yang memungkinkan Anda mengubah permintaan dengan cepat:

Mesin Tulis Ulang menyala
Aturan Penulisan Ulang ^product/([^/\.]+)/?$ product.php?id=$1 [L]

Namun ini adalah topik yang sangat luas dan berada di luar cakupan artikel ini.

Mengonfigurasi Modul Apache

Seperti yang saya katakan, Apache adalah program modular, fungsinya dapat diperluas menggunakan modul. Semua modul pemuat yang tersedia dan file konfigurasi modul terletak di folder /etc/Apache/mods-available. Dan diaktifkan di /etc/Apache/mods-enable.

Namun Anda tidak perlu menganalisis isi folder tersebut. Konfigurasi Apache 2.4 dengan menambahkan modul dilakukan dengan menggunakan tim khusus. Anda dapat melihat semua modul yang berjalan dengan perintah:

Anda dapat mengaktifkan modul dengan perintah:

sudo a2enmod nama_modul

Dan nonaktifkan:

sudo a2dismod nama_modul

Setelah mengaktifkan atau menonaktifkan modul, Anda perlu me-restart apache:

sudo systemctl restart apache2

Ketika salah satu dari perintah ini dijalankan, tautan simbolik ke file modul dengan ekstensi load dibuat atau dihapus di direktori mods-available. Anda bisa melihat isi file ini, hanya ada satu baris. Misalnya:

vi /etc/Apache2/mods-available/deflate.load

Ini berarti modul dapat diaktifkan hanya dengan menambahkan baris ini ke file apache2.conf. Namun merupakan kebiasaan untuk melakukan hal itu untuk menghindari kebingungan.

Pengaturan modul terletak di folder yang sama, hanya di file dengan ekstensi .conf, bukan memuat. Misalnya, mari kita lihat pengaturan modul yang sama untuk kompresi deflasi:

vi /etc/Apache2/mods-available/deflate.conf

File-file yang ada di folder conf-available adalah modul yang sama, hanya saja diinstal terpisah dari apache, bisa berupa file konfigurasi untuk mengaktifkan modul php atau bahasa pemrograman lainnya. Semuanya bekerja persis sama di sini, hanya perintah untuk mengaktifkan dan menonaktifkan modul ini yang sedikit berbeda:

a2enconf nama_modul

nama modul a2disconf

Seperti yang Anda lihat, mengaktifkan modul sangat sederhana. Mari aktifkan beberapa modul yang diperlukan tetapi tidak diaktifkan secara default:

sudo a2enmod kedaluwarsa
$ sudo a2enmod tajuk
$ sudo a2enmod menulis ulang
$ sudo a2enmod ssl

Modul expired dan header mengurangi beban pada server. Mereka mengembalikan header Tidak Dimodifikasi jika dokumen tidak berubah sejak saat itu permintaan terakhir. Modul kadaluwarsa memungkinkan Anda mengatur waktu kapan browser harus menyimpan dokumen yang diterima dalam cache. Penulisan ulang memungkinkan Anda mengubah alamat yang diminta dengan cepat, sangat berguna saat membuat tautan CNC, dll. Dan yang terakhir mengaktifkan dukungan untuk enkripsi SSL. Jangan lupa untuk me-restart apache2 setelah menyelesaikan pengaturan.

Mengonfigurasi Host Virtual Apache

Akan sangat tidak nyaman jika menggunakan salah satunya mesin fisik Hanya satu situs yang dapat dihosting. Apache dapat mendukung ratusan situs di satu komputer dan menyajikan konten yang benar untuk setiap situs. Host virtual digunakan untuk ini. Server menentukan domain mana yang menerima permintaan dan menyajikan konten yang diperlukan dari folder domain ini.

Pengaturan host Apache terletak di folder /etc/Apache2/hosts-available/. Untuk membuat host baru, cukup buat file dengan nama apa saja (sebaiknya diakhiri dengan nama host) dan isi dengan data-data yang diperlukan. Anda perlu menggabungkan semua parameter ini dalam sebuah arahan Host Virtual. Selain parameter yang dibahas di sini, parameter berikut akan digunakan:

  • Nama Server- nama domain utama
  • ServerAlias- nama tambahan yang dapat digunakan untuk mengakses situs
  • Admin Server - e-mail administrator
  • DokumenRoot- folder dengan dokumen untuk domain ini

Misalnya:

vi /etc/Apache2/sites-available/test.site.conf

Apache adalah server Internet yang paling banyak digunakan di sistem Linux. Server Internet digunakan untuk melayani halaman Internet berdasarkan permintaan dari komputer klien. Klien biasanya meminta dan melihat halaman Internet menggunakan aplikasi browser Internet seperti Firefox, Opera, Chromium atau Mozilla.

Pengguna memasukkan Uniform Resource Locator (URL) untuk mengidentifikasi server Internet berdasarkan kualifikasinya nama domain(FQDN) dan jalur ke sumber daya yang diperlukan. Misalnya, untuk melihat halaman beranda situs web Ubuntu, pengguna hanya perlu memasukkan FQDN:

www.ubuntu.com

SymLinksIfOwnerMatch- Mengikuti tautan simbolik jika file atau direktori target memiliki pemilik yang sama dengan tautan tersebut.

pengaturan httpd

Bagian ini mencakup beberapa pengaturan konfigurasi dasar untuk layanan. httpd.

File Kunci- Pernyataan LockFile menetapkan jalur ke lockfile ketika server dikompilasi dengan opsi USE_FCNTL_SERIALIZED_ACCEPT atau USE_FLOCK_SERIALIZED_ACCEPT. Itu harus disimpan di disk lokal. Sebaiknya biarkan nilai default kecuali direktori log terletak di share NFS. DI DALAM jika tidak nilai asli biaya untuk mengubah ke katalog disk lokal dengan izin baca hanya untuk root.

File Pid- instruksi PidFile menetapkan file di mana server menulis ID prosesnya (pid). File ini hanya dapat dibaca oleh root. Dalam kebanyakan kasus, parameter ini tidak boleh diubah.

Pengguna- Pernyataan Pengguna menetapkan userid (ID pengguna) yang digunakan oleh server untuk menanggapi permintaan. Pengaturan ini menentukan hak akses server. File apa pun yang tidak dapat diakses oleh pengguna ini juga tidak akan dapat diakses oleh pengunjung situs Anda. Pengguna defaultnya adalah "www-data".

Kelompok- instruksi Grup mirip dengan arahan Pengguna. Grup menetapkan grup di mana server akan merespons permintaan. Nilai defaultnya juga "www-data".

Modul Apache2

Apache2 adalah server modular. Ini berarti hanya fungsionalitas paling dasar yang disertakan dalam inti server. Fitur-fitur lanjutan tersedia melalui modul yang dapat dimuat ke Apache2. Bawaan set dasar modul disertakan di server pada tahap kompilasi. Jika server dikompilasi untuk menggunakan modul yang dimuat secara dinamis, maka modul dapat dikompilasi secara terpisah dan ditambahkan kapan saja menggunakan instruksi Modul Beban. Jika tidak, Apache2 harus dikompilasi ulang untuk menambah atau menghapus modul.

Ubuntu mengkompilasi Apache2 dengan kemampuan pemuatan dinamis modul. Arahan konfigurasi dapat dimasukkan berdasarkan keberadaan modul yang sesuai di blok .

Anda dapat menginstal modul Apache2 tambahan dan menggunakannya dengan server Internet Anda. Misalnya, jalankan perintah berikut di terminal untuk menginstal modul otorisasi MySQL:

Sudo apt-get install libapache2-mod-auth-mysql

Cari modul tambahan di direktori /etc/apache2/mods-available.

Gunakan utilitas a2enmod untuk mengaktifkan modul:

Sudo a2enmod auth_mysql sudo layanan apache2 restart

Demikian pula, a2dismod akan menonaktifkan modul:

Sudo a2dismod auth_mysql sudo layanan apache2 restart

Menyiapkan HTTPS

Modul mod_ssl menambahkan fitur penting untuk server Apache2 - kemampuan untuk mengenkripsi koneksi. Jadi ketika browser Anda terhubung menggunakan SSL, awalan https:// digunakan di awal URL di bilah navigasi.

Modul mod_ssl tersedia dalam paket Apache2-common. Jalankan perintah berikut di terminal untuk mengaktifkan modul ini:

Sudo a2enmod ssl

Pengaturan default untuk HTTPS ada di file /etc/Apache2/sites-available/default-ssl. Agar Apache2 menyediakan HTTPS, file kunci dan sertifikat juga diperlukan. Penyiapan HTTPS awal menggunakan sertifikat dan kunci yang dihasilkan oleh paket ssl-cert. Ini boleh saja untuk pengujian, namun harus diganti dengan sertifikat yang cocok dengan situs atau server Anda. Untuk informasi tentang membuat kunci dan mendapatkan sertifikat, lihat bagian Sertifikat.

Untuk mengonfigurasi Apache2 untuk HTTPS, masukkan yang berikut ini:

Sudo a2ensite default-ssl

Direktori /etc/ssl/certs dan /etc/ssl/private digunakan secara default. Jika Anda memasang sertifikat dan kunci di direktori lain, pastikan untuk mengubah opsi SSLCertificateFile dan SSLCertificateKeyFile.

Dengan Apache2 yang sekarang dikonfigurasi ke HTTPS, mari mulai ulang layanan untuk mengizinkan pengaturan baru:

Layanan Sudo apache2 dimulai ulang

Tergantung pada cara Anda menerbitkan sertifikat, Anda mungkin harus masuk frasa sandi ketika Apache2 dimulai.

Anda dapat mengakses halaman server aman dengan mengetikkan https://namahost_Anda/url/ ke dalamnya bilah alamat peramban Anda.

Rekam Hak Berbagi

Agar lebih dari satu pengguna memiliki akses tulis ke direktori yang sama, Anda harus memberikan akses tulis ke grup yang menyatukan mereka. Contoh berikut memberikan izin menulis ke direktori /var/www untuk grup "webmaster".

Sudo chgrp -R webmaster /var/www sudo find /var/www -type d -exec chmod g=rwxs "()" \; sudo temukan /var/www -type f -exec chmod g=rws "()" \;

Jika akses harus diberikan kepada lebih dari satu grup per direktori, gunakan Daftar Akses Terkendali (ACL).

Artikel ini adalah panduan langkah demi langkah untuk membuat server web lokal. Ini menjelaskan instalasi Server web Apache 2.4 pada platform OS Windows. Instalasi diuji pada Windows XP SP3.

Komposisi server web:

  • Apache 2.4 (versi 2.4.10);
  • PHP 5.4 (versi 5.4.34);
  • MySQL 5.5 (versi 5.5.23).

Ini lingkungan kerja sesuai:

  • webmaster berpengalaman untuk menguji proyek mereka;
  • untuk webmaster pemula untuk membuat situs web pertama mereka.

Distribusi Apache 2.4 dan PHP 5.4 dikompilasi di VC9 (Visual Studio 2008).

Versi Apache 2.4 VC9 berfungsi dengan hampir semua versi terkini Versi Windows(7/8/Vista/XP SP3).

Agar aplikasi VC9 berfungsi, Anda perlu memperbarui pustaka Visual C++ terlebih dahulu.

Menginstal paket pembaruan pustaka Visual C++

Unduh distribusi pembaruan vcredist_x86.exe dari situs web Microsoft, jalankan file dan lakukan pembaruan.

Menginstal dan mengkonfigurasi server Apache 2.4

Distribusi Apache tidak memiliki file instalasi. Oleh karena itu, instalasi akan dilakukan secara manual.

Buat folder dan buka paket arsip httpd-2.4.10-win32-VC9.zip.

Dalam file konfigurasi httpd. rute default conf adalah C:\Apache24. Oleh karena itu, pengeditan pada file konfigurasi akan jauh lebih sedikit jika Anda membongkar arsip ke dalam folder ini.

Kami akan membongkar distribusi ke dalam folder C:\TestServer.

Kami melakukan perubahan pada file konfigurasi C:\TestServer\Apache24\conf\httpd. konf. Saat menulis jalur, alih-alih karakter "\" (garis miring terbalik), gunakan karakter "/" (garis miring). Beginilah cara jalur ditulis di ruang operasi sistem Linux dan Unix. Namun Apache pada awalnya dikembangkan khusus untuk sistem operasi ini.

Kami melakukan penggantian grup teks C:/Apache24 dengan C:/TestServer/Apache24.

Tetapkan nilai parameter ServerName.
Nama Server localhost:80

Tetapkan nilai parameter ServerAdmin (email administrator).
Admin Server [dilindungi email]

Tetapkan nilai parameter DocumentRoot (lokasi dokumen situs).
DocumentRoot C:/TestServer/Apache24/htdocs

Anda mungkin ingin menyimpan dokumen situs secara terpisah dari server. Misalnya, di folder C:\Situs Saya. Kemudian parameter ini dapat diubah.
DocumentRoot C:/Situs Saya

Eksekusi Apache terletak di folder C:\TestServer\Apache24\bin. Tambahkan nilai ini ke variabel lingkungan Windows PATH.
JALUR = C:\TestServer\Apache24\bin ;

Instal Apache sebagai layanan.
httpd.exe -k instal

Jika , maka ketika menginstal layanan, sebuah pesan akan muncul yang menunjukkan bahwa program tersebut diblokir koneksi eksternal. Agar layanan dapat berfungsi, Anda harus memberikan izin untuk membuka kunci.

Mari kita mulai server Apache.
httpd.exe -k mulai

Kami memeriksa kinerja server. Di baris perintah browser, ketikkan alamat: http://localhost. Jika instalasi Apache berhasil, teks Berhasil! . Jika tidak, kita akan melihat layar kosong.

Jika server tidak memulai, Anda harus memeriksa apakah port 80, yang digunakan Apache secara default, sedang sibuk.

Ini dilakukan dengan menggunakan perintah
status bersih –anb

Paling sering port ini digunakan oleh Skype atau Firefox. Dalam hal ini, Anda harus melepaskan port tersebut atau memindahkan Apache ke port 8080.

Untuk melakukan ini, di file httpd. conf kita mengubah nilai parameter ServerName dan Listen. Nama Server localhost:8080
Dengarkan 8080

Setelah ini, restart layanan dengan perintah
httpd.exe -k mulai ulang

dan sekali lagi kita coba masuk ke http://localhost

Untuk memudahkan bekerja dengan server Apache, Anda dapat mengatur pintasan di menu yang ditunjuk C:\TestServer\Apache24\bin\ ApacheMonitor.exe

Menginstal PHP 5.4

Kami pergi ke situs web pengembang http://windows.php.net/download/. Temukan distribusi PHP 5.4 di bagian VC9 x86 Thread Safe dan unduh arsip php-5.4.34-Win32-VC9-x86.zip.

Buat folder di komputer lokal, biarkan saja C:\TestServer\PHP54, dan ekstrak arsipnya.

Kami kembali ke situs dengan kit distribusi Apache. Di bagian Tambahan + VC9 kami menemukan arsip php5apache2_4.dll-php-5.4-win32.zip dengan modul Apache PHP dan mengunduhnya.

Di arsip kami menemukan folder dengan modul php5apache2_4.dll versi terbaru dan meletakkannya di folder C:\TestServer\PHP54.

Dalam file konfigurasi httpd. conf tambahkan baris:

LoadModule php 5_ modul « C :/ TestServer / PHP 54/ php 5 apache 2_4. dll"
Aplikasi AddHandler /x-httpd-php. php
# konfigurasi jalur ke php. ini
PHPIniDir "C:/TestServer/PHP 54/php"

Dalam sebuah folder C:\TestServer\Apache54\htdocs buat file tes.php.

gema "Halo Apache!";
?>

Mulai ulang Apache.

Di bilah alamat browser kita ketik http://localhost/test.php. Jika teksnya Halo Apache! , maka instalasi PHP berhasil diselesaikan.

Menyiapkan php.ini

Untuk bekerja dengan database MySQL, kita perlu mengkonfigurasi php. ini – file konfigurasi PHP.

Di folder C:\TestServer\PHP54 ada dua templat: development dan php.ini-production.

Ganti nama templat produksi php.ini menjadi .

Perpustakaan untuk bekerja dengan database MySQL terletak di folder C:\TestServer\PHP 54\ext. Jalur ini harus ditentukan dalam direktif extension_dir pada file konfigurasi php.ini.

Kami menemukan parameter ini, menghapus karakter komentar di awal baris (ini adalah titik koma) dan menulis jalurnya.
extension_dir = "C:/TestServer/PHP 54/ext"

Ada dua perpustakaan untuk bekerja dengan database MySQL di PHP: php_mysqli. dll lebih baru dan direkomendasikan untuk digunakan dalam pekerjaan; php_mysql. dll sudah lama, tetapi sebagian besar situs menggunakannya.

Sebaiknya sertakan kedua perpustakaan dalam file php.ini.
ekstensi = php_mysql. dll
ekstensi = php_mysqli. dll

Setelah menyelesaikan pengeditan, pastikan untuk me-restart server Apache.

Menginstal dan mengkonfigurasi MySQL

Buka halaman http://www.mysql.ru/download/. Pilih versi untuk Win32 atau Win64. Kami akan mengunduh paket instalasi mysql-5.5.23-win32.msi.

Jalankan file mysql-5.5.23-win32.msi.

Kami setuju untuk ketentuan lisensi, pilih jenis instalasi Khas.

Mari kita lanjutkan ke pengaturan server MySQL.

Pilih Konfigurasi Terperinci – pengaturan konfigurasi terperinci.

Pilih jenis server dengan persyaratan minimal ke memori – Mesin Pengembang.

Sekarang kita perlu memutuskan database mana (InnoDB, MyISAM) yang akan digunakan oleh server kita.

Basis Data Multifungsi – InnoDB dan MyISAM didukung.
Hanya Basis Data Transaksional - Didukung InnoDB.
Hanya database Non-Transaksional- myISAM didukung.

Saat memilih dukungan InnoDB, langkah selanjutnya– memilih lokasi penyimpanan untuk tabel InnoDB.

Untuk jumlah maksimum koneksi simultan, lebih baik memilih Pengaturan Manual ( instalasi manual) dan terima nilai default (15 ).

Pada langkah ini, parameter Aktifkan Jaringan TCP/IP mengaktifkan dukungan untuk koneksi TCP dan memilih port yang akan digunakan untuk membuat koneksi ini. Parameter Aktifkan Mode Ketat juga disetel – mode kepatuhan ketat terhadap standar MySQL.

Sekarang Anda perlu memilih pengkodean default. Pilihan terbaik- Pengkodean UTF-8. Oleh karena itu kami memilih Terbaik Dukungan Untuk Multilingualisme.

Agar MySQL dapat dimulai sebagai layanan jendela- instal Instal sebagai Layanan Windows. Jika Anda perlu memulai layanan ini secara otomatis, instal Luncurkan Server MySQL secara otomatis.

Sekarang atur kata sandi administrator dan matikan opsi Ubah Pengaturan Keamanan.

Setelah mengklik tombol Next dan Execute Instalasi MySQL dapat dianggap selesai.

Untuk memeriksa fungsionalitas MySQL, klik tombol Start Windows, temukan utilitas untuk bekerja dengan MySQL ( MySql Server 5.5 MySQL Server Command Line) dan jalankan.

Setelah memasukkan kata sandi administrator, kita dibawa ke baris perintah MySQL.

Masukkan perintah
tampilkan database;

Jika kita melihat daftar database, ini berarti server berfungsi dengan benar.

Keluar dari mode baris perintah:
KELUAR;

Ini menyelesaikan instalasi server. Semoga beruntung!


Apache Lounge telah menyediakan biner Windows terkini dan modul pihak ketiga yang populer selama lebih dari 15 tahun. Kami memiliki ratusan ribu pengguna yang puas: perusahaan kecil dan besar serta pengguna rumahan. Selalu buat dengan dependensi terkini dan kompiler terbaru, dan diuji secara menyeluruh. Biner direferensikan oleh ASF, Microsoft, PHP dll. dan semakin banyak perangkat lunak yang dikemas dengan biner dan modul kami.

Binernya, dibuat dengan sumber dari ASF di httpd.apache.org, berisi patch terbaru dan dependensi terbaru seperti zlib, openssl, dll. yang menjadikan pengunduhan di sini sebagian besar lebih aktual dibandingkan pengunduhan dari tempat lain. Biner jangan lari pada XP dan 2003. Berjalan pada: 7 SP1, Vista SP2, 8/8.1, 10, Server 2008 SP2/R2 SP1, Server 2012/R2, Server 2016.

Bangun dengan Windows® Visual Studio C++ 2017 terbaru alias VC15. VC15 memiliki peningkatan, perbaikan, dan pengoptimalan dibandingkan VC14 di berbagai bidang seperti Kinerja, Manajemen Memori, Fitur kesesuaian standar baru, Pembuatan kode, dan Stabilitas. Misalnya penyetelan dan peningkatan kualitas kode yang dilakukan di berbagai area pembuatan kode untuk "kecepatan". Dan memanfaatkan lebih banyak prosesor modern dan mendukung fitur internal edisi Windows (win 7 dan lebih tinggi).

Yakin!! bahwa Anda telah menginstal (14.16.27027.1) C++ Redistributable Visual Studio 2017 terbaru: vc_redist_x64 atau vc_redist_x86 .

Catatan: VC15 kompatibel dengan VC14. Artinya, modul VC14 dapat digunakan di dalam biner VC15 (misalnya PHP VC14 sebagai modul). Karena kompatibilitas ini, nomor versi Redistributable adalah 14.1x.xx. Dan setelah install Redistributable VS2015 diupdate dari 14.0x.xx menjadi VS2017 14.1x.xx (masih bisa menggunakan VC14). Biner Apache 2.4 VC15

Modul Apache 2.4 VC15

Kirimkan tanda tangan PGP dan/atau checksum SHA untuk memverifikasi konten file.

mod_fcgid
Modul FastCGI ASF mod_fcgid-2.3.9-win64-VC15.zip info 25 Apr "17 44K mod_fcgid-2.3.9-win32-VC15.zip 40K
mod_security
Firewall aplikasi, mesin deteksi dan pencegahan intrusi mod_security-2.9.3-win64-VC15.zip info 09 Des "18 591K mod_security-2.9.3-win32-VC15.zip 522K
mod_jk & isapi_redirect.dll
Konektor Tomcat mod_jk-1.2.46-win64-VC15.zip info 29 Okt "18 165K mod_jk-1.2.46-win32-VC15.zip 133K isapi_redirect.dll-1.2.46-VC15.zip info 389K
mod_xsendfile
Memproses header X-SENDFILE yang didaftarkan oleh pengendali keluaran asli.
Ini berguna untuk memproses keluaran skrip mis. php, perl atau cgi apa pun.
mod_xsendfile-1.0-P1-win64-VC15.zip info 30 Mei "17 14K mod_xsendfile-1.0-P1-win32-VC15.zip 14K
mod_log_rotate
rotasi log asli server yang sedang diproses mod_log_rotate-1.00a-win64-VC15.zip info 30 Mei "17 10K mod_log_rotate-1.00a-win32-VC15.zip 9K
dbd_modules
DBD Virtual Host dan DBD Logging dari/ke database SQL (Saya) dbd_modules-1.0.6-win64-VC15.zip info 30 Mei "17 24K dbd_modules-1.0.6-win32-VC15.zip 22K
mod_bw

  • Pembatas bandwidth

    Sergei Savenkov