Cara Memasang Nginx, MariaDB dan PHP (FEMP) Tumpukan pada FreeBSD
- 4831
- 285
- Clarence Tromp
Tutorial ini akan membimbing anda mengenai cara memasang dan mengkonfigurasi FBEMP di FreeBSD 11.x Siaran terkini. FBEMP adalah akronim yang menggambarkan koleksi perisian berikut:
FreeBSD 11.1 Pengedaran seperti Unix, Server Web Nginx, Sistem Pengurusan Pangkalan Data Relasi MariaDB (garpu komuniti MySQL) dan bahasa pengaturcaraan dinamik PHP yang berjalan di sebelah pelayan.
Keperluan
- Pemasangan FreeBSD 11.x
- 10 perkara yang perlu dilakukan selepas pemasangan FreeBSD
Langkah 1: Pasang pelayan web nginx di FreeBSD
1. Perkhidmatan pertama yang akan kami pasang untuk kami Fbemp Tumpukan masuk FreeBSD adalah pelayan web, diwakili oleh Nginx perisian.
Nginx Pelayan Web mempunyai lebih banyak pakej pra-cobai yang terdapat di FreeBSD 11.x port. Untuk mendapatkan senarai Nginx binari dari Pelabuhan repositori, mengeluarkan arahan berikut di terminal pelayan anda.
# ls/usr/port/www/| grep nginx # pkg carian -o nginxCari pakej Nginx
2. Dalam konfigurasi tertentu ini, kami akan memasang versi pakej utama Nginx dengan mengeluarkan arahan di bawah. The pkg Pengurusan Pakej akan meminta anda jika anda ingin meneruskan dengan memasang pakej nginx. Jawapan dengan ya (y
dalam baris arahan) untuk memulakan proses pemasangan.
# pkg pasang nginxPasang Nginx pada FreeBSD
3. Selepas pakej pelayan web nginx dipasang di sistem anda, laksanakan arahan berikut untuk membolehkan sistem daemon dan mulakan perkhidmatan dalam sistem anda.
# sysrc nginx_enable = "ya" # perkhidmatan nginx startMulakan dan aktifkan nginx di FreeBSD
4. Seterusnya, menggunakan sockstat perintah, sahkan soket rangkaian perkhidmatan nginx, jika mereka mengikat 80/TCP pelabuhan, dengan mengeluarkan arahan di bawah. Output perintah sockstat akan disalurkan melalui utiliti grep untuk mengurangkan hasil yang dikembalikan hanya ke rentetan nginx.
# sockstat -4 | grep nginx
5. Akhirnya, buka penyemak imbas pada komputer desktop di rangkaian anda dan lawati laman web lalai nginx melalui protokol HTTP. Tulis FQDN mesin anda atau nama domain anda atau alamat IP pelayan anda dalam url penyemak imbas yang difailkan untuk meminta laman web lalai pelayan web nginx. Mesej "Selamat datang ke nginx!"Harus dipaparkan di penyemak imbas anda, seperti yang digambarkan dalam tangkapan skrin di bawah.
http: // yourdomain.com http: // your_server_ip http: // your_machine_fqdnSahkan nginx pada freebsd
6. Direktori Weboot Lalai untuk Kandungan Web Nginx di Lampiran di /usr/local/www/nginx/ Laluan sistem mutlak. Di lokasi ini, anda harus membuat, menyalin atau memasang fail kandungan web, seperti .html
atau .php
fail, untuk laman web anda.
Untuk menukar lokasi ini, edit fail konfigurasi utama nginx dan ubah arahan root untuk mencerminkan laluan webroot baru anda.
# nano/usr/local/etc/nginx/nginx.Conf
Di sini, cari dan kemas kini baris berikut untuk mencerminkan laluan webroot baru anda:
root/path/to/new/webroot;
Langkah 2: Pasang PHP pada FreeBSD
7. Tidak seperti Apache http pelayan, nginx tidak mempunyai keupayaan untuk memproses kod php secara asli. Sebagai balasan, pelayan web nginx meluluskan permintaan PHP kepada penterjemah PHP, seperti php-fpm fastcgi Daemon, yang memeriksa dan melaksanakan kod tersebut. Kod yang dihasilkan kemudian dikembalikan ke Nginx, yang memasang semula kod itu kembali ke format HTML yang diminta dan menghantar kod lebih lanjut ke pelayar web pelawat.
FreeBSD 11.x Repositori Pelabuhan menawarkan pelbagai versi binari untuk bahasa pengaturcaraan PHP, seperti Php 5.6, Php 7.0 dan Php 7.1 siaran. Untuk memaparkan semua versi PHP yang telah disusun sebelum ini FreeBSD 11.x, Jalankan arahan di bawah .
# pkg carian -o php # ls/usr/ports/lang/| GREP PHP
8. Anda boleh memilih untuk memasang versi php yang paling sesuai untuk aplikasi web yang anda jalankan dalam sistem anda. Walau bagaimanapun, dalam panduan ini, kami akan memasang versi terkini PHP.
Untuk memasang Php 7.1 Siaran dan beberapa modul penting PHP diperlukan untuk aplikasi web yang pelbagai, jalankan arahan berikut.
# PKG Pasang Php71 Php71-Mysqli Php71-McRrypt Php71-Zlib Php71-Gd Php71-Json Mod_Php71 Php71-Mbstring Php71-Curl
9. Setelah anda memasang pakej PHP dalam sistem anda, buka PHP-FPM fail konfigurasi untuk nginx dan laraskan nilai pengguna dan kumpulan untuk memadankan nilai pada pengguna runtime nginx, iaitu www. Pertama, buat sandaran fail dengan arahan di bawah.
# cp/usr/local/etc/php-fpm.D/www.conf ,.sandaran
Kemudian, buka fail dan kemas kini baris berikut seperti yang ditunjukkan dalam sampel di bawah.
pengguna = kumpulan www = wwwKonfigurasikan PHP-FPM di FreeBSD
10. Juga, buat fail konfigurasi PHP yang digunakan untuk pengeluaran dengan mengeluarkan arahan di bawah. Pada fail ini, anda boleh membuat perubahan tersuai yang akan digunakan untuk penterjemah PHP semasa runtime.
# cp/usr/local/etc/php.INI Production/USR/Local/etc/php.Ini
Contohnya, tukar Tarikh.Zon masa Menetapkan untuk penterjemah PHP untuk mengemas kini lokasi fizikal mesin anda seperti yang ditunjukkan dalam contoh di bawah. Senarai zon waktu PHP boleh didapati di sini: http: // php.bersih/manual/en/timezones.php.
# vi/usr/tempatan/etc/php.Ini
Tambah zon waktu berikut (set zon waktu mengikut negara anda).
Tarikh.zon waktu = Eropah/London
Anda juga boleh menyesuaikan pembolehubah PHP yang lain, seperti saiz fail maksimum fail yang dimuat naik, yang boleh ditingkatkan dengan mengubah nilai di bawah:
upload_max_filesize = 10m post_max_size = 10m
11. Selepas, anda telah membuat tetapan tersuai untuk PHP, aktifkan dan mulakan PHP-FPM Daemon untuk memohon konfigurasi baru dengan mengeluarkan arahan di bawah.
# sysrc php_fpm_enable = ya # perkhidmatan php-fpm bermulaMulakan dan aktifkan PHP-FPM di FreeBSD
12. Secara lalai, PHP-FPM Daemon di FreeBSD mengikat pada soket rangkaian tempatan di port 9000/TCP. Untuk mempamerkan PHP-FPM soket rangkaian melaksanakan arahan berikut.
# sockstat -4 -6 | GREP PHP-FPM
13. Agar pelayan web nginx lulus skrip php ke Fastcgi Pelayan Gateway, yang sedang mendengar 127.0.0.1: 9000
soket, buka fail konfigurasi utama nginx dan tambahkan blok kod berikut seperti yang digambarkan dalam sampel di bawah.
# vi/usr/tempatan/etc/nginx/nginx.Conf
Blok Kod Fastcgi untuk Nginx:
Lokasi ~ \.php $ root/usr/local/www/nginx; fastcgi_pass 127.0.0.1: 9000; indeks fastcgi_index.PHP; fastcgi_param script_filename $ request_filename; termasuk fastcgi_params;Konfigurasikan fastcgi untuk nginx di freebsd
14. Untuk melihat maklumat PHP semasa untuk pelayan anda, buat maklumat.php
fail di laluan weboot nginx dengan mengeluarkan arahan berikut.
# echo "" | TEE/USR/LOKAL/WWW/NGINX/INFO.php
15. Kemudian, uji dan mulakan semula daemon nginx untuk memohon Php fastcgi tetapan dan lawati maklumat.php
halaman dalam penyemak imbas.
# nginx -t # ujian fail konfigurasi nginx untuk ralat sintaks # perkhidmatan nginx mulakan semula
Ganti alamat IP atau nama domain dalam pautan di bawah dengan sewajarnya. Halaman Maklumat PHP harus memaparkan maklumat seperti yang digambarkan dalam tangkapan skrin di bawah.
http: // yourdomain.com/info.php http: // server_ip-atau-fqdn/info.phpPeriksa maklumat PHP di FreeBSD
Langkah 3: Pasang Mariadb di FreeBSD
16. Komponen terakhir yang hilang dari anda FEMP timbunan dalam pangkalan data. MariaDB/MySQL adalah salah satu perisian RDBMS sumber terbuka yang paling berkaitan dengan pelayan web nginx yang digunakan untuk menggunakan laman web dinamik.
Sebenarnya, MariaDB/MySQL adalah salah satu pangkalan data relasi yang paling banyak digunakan di dunia. Mencari melalui Pelabuhan FreeBSD, anda boleh menemui pelbagai siaran MariaDB/MySQL.
Dalam panduan ini kita akan memasang Mariadb pangkalan data, yang merupakan garpu komuniti Mysql pangkalan data. Untuk mencari versi yang ada Mariadb, Mengeluarkan arahan berikut di terminal.
# ls -al/usr/port/pangkalan data/| Grep Mariadb # pkg Cari MariaDBCari Pakej MariaDB
17. Untuk memasang versi terkini pelayan pangkalan data MariaDB, jalankan arahan berikut. Anda juga harus memasang modul pemacu pangkalan data relasi php yang digunakan oleh skrip php untuk menyambung ke mysql.
# PKG Pasang Mariadb102-server Php71-Mysqli
18. Selepas pangkalan data telah dipasang, aktifkan daemon MySQL dan mulakan perkhidmatan pangkalan data dengan menjalankan arahan berikut.
# sysrc mysql_enable = "ya" # perkhidmatan mysql-server bermula
19. Juga, pastikan anda memulakan semula PHP-FPM Daemon untuk memuatkan sambungan pemacu MySQL.
# perkhidmatan php-fpm mulakan semula
20. Pada langkah seterusnya, selamat Mariadb pangkalan data dengan melancarkan mysql_secure_installation Skrip. Gunakan sampel di bawah skrip pemasangan untuk menjawab soalan. Pada dasarnya, katakan ya (y)
Untuk semua soalan yang diminta untuk mendapatkan pangkalan data dan taipkan kata laluan yang kuat untuk pengguna root mysql.
#/usr/local/bin/mysql_secure_installationOutput skrip pemasangan mysql selamat
Nota: Menjalankan semua bahagian skrip ini disyorkan untuk semua pelayan MariaDB dalam Penggunaan Pengeluaran! Sila baca setiap langkah dengan teliti! Untuk log masuk ke Mariadb untuk mengamankannya, kami memerlukan kata laluan semasa untuk pengguna root. Sekiranya anda baru memasang MariaDB, dan anda belum menetapkan kata laluan root, kata laluan akan kosong, jadi anda hanya perlu tekan Enter di sini. Masukkan kata laluan semasa untuk root (masukkan untuk tiada): Ok, kata laluan yang berjaya digunakan, beralih ... menetapkan kata laluan root memastikan tiada siapa yang boleh log masuk ke pengguna akar MariaDB tanpa kebenaran yang betul. Tetapkan kata laluan root? [Y/N]y
Kata Laluan Baru: Masukkan semula Kata Laluan Baru: Kata Laluan Dikemas kini! Muat semula Jadual Keistimewaan ... Kejayaan! Secara lalai, pemasangan MariaDB mempunyai pengguna tanpa nama, yang membolehkan sesiapa masuk ke MariaDB tanpa perlu membuat akaun pengguna untuk mereka. Ini hanya bertujuan untuk ujian, dan membuat pemasangan menjadi lebih lancar. Anda harus membuangnya sebelum bergerak ke persekitaran pengeluaran. Keluarkan pengguna tanpa nama? [Y/N]y
... kejayaan! Biasanya, akar hanya boleh dibenarkan untuk menyambung dari 'localhost'. Ini memastikan seseorang tidak dapat meneka pada kata laluan root dari rangkaian. Tidak balak log masuk dari jauh? [Y/N]y
... kejayaan! Secara lalai, MariaDB dilengkapi dengan pangkalan data bernama 'Ujian' yang boleh diakses oleh sesiapa sahaja. Ini juga hanya bertujuan untuk ujian, dan harus dikeluarkan sebelum bergerak ke persekitaran pengeluaran. Keluarkan pangkalan data ujian dan akses kepadanya? [Y/N]y
- Menurunkan Pangkalan Data Ujian ... Kejayaan! - Mengeluarkan Keistimewaan pada Pangkalan Data Ujian ... Kejayaan! Muat semula Jadual Keistimewaan akan memastikan bahawa semua perubahan yang dibuat setakat ini akan berkuatkuasa dengan segera. Muat semula jadual keistimewaan sekarang? [Y/N]y
... kejayaan! Membersihkan ... semuanya selesai! Sekiranya anda telah menyelesaikan semua langkah di atas, pemasangan MariaDB anda kini selamat. Terima kasih kerana menggunakan Mariadb!
21. Untuk menguji sambungan pangkalan data MariaDB dari konsol, laksanakan arahan di bawah.
# mysql -u root -p -p -e "tunjukkan status seperti 'sambungan'"
22. Untuk terus menjamin MariaDB, yang secara lalai untuk mendengar sambungan rangkaian masuk 0.0.0.0: 3306/TCP soket, mengeluarkan arahan di bawah untuk memaksa perkhidmatan untuk mengikat loopback antara muka dan tidak membenarkan sepenuhnya akses jauh. Selepas itu, mulakan semula perkhidmatan MySQL untuk menggunakan konfigurasi baru.
# sysrc mysql_args = "-bind-address = 127.0.0.1 " # perkhidmatan MySQL-Server mulakan semulaBind Mariadb ke Alamat Loopback
Sahkan jika localhost Mengikat berjaya digunakan dengan menjalankan perintah Netstat seperti yang ditunjukkan dalam contoh di bawah.
# netstat -an -p tcp
Itu sahaja! Anda telah berjaya memasang pelayan web nginx, pangkalan data relasi MariaDB dan bahasa pengaturcaraan pelayan php di FreeBSD. Anda kini boleh mula membina laman web dinamik untuk melayani kandungan web kepada pelawat anda.
- « Cara Meningkatkan Kelajuan Internet Pelayan Linux dengan TCP BBR
- Cara menjalankan skrip php sebagai pengguna biasa dengan cron »