Cara Memasang Rangka Kerja PHP Laravel dengan Nginx pada CentOS 8
- 4383
- 1233
- Don Will
Laravel adalah rangka kerja web berasaskan sumber terbuka, terkenal, dan moden dengan sintaks yang ekspresif, elegan, dan mudah difahami yang memudahkan untuk membina aplikasi web yang besar dan mantap.
Ciri-ciri utamanya termasuk enjin penghalaan yang mudah, cepat, bekas suntikan ketergantungan yang kuat, pelbagai back-ends untuk penyimpanan sesi dan cache, pangkalan data ekspresif dan intuitif Orm (pemetaan objek-relasi), pemprosesan kerja latar belakang yang mantap, dan penyiaran acara masa nyata.
Juga, ia menggunakan alat seperti Komposer - Pengurus Pakej PHP untuk menguruskan kebergantungan dan Artisan - antara muka baris arahan untuk membina dan menguruskan aplikasi web.
Dalam artikel ini, anda akan belajar cara memasang versi terkini dari Laravel php Rangka Kerja Web Centos 8 Pengagihan Linux.
Keperluan pelayan
The Laravel Rangka kerja mempunyai keperluan berikut:
- Php> = 7.2.5 Dengan sambungan PHP ini OpenSSL, PDO, MBSTRING, TOKENIZER, XML, CTYPE dan JSON.
- Komposer - untuk memasang dan menguruskan kebergantungan.
Langkah 1: Memasang timbunan lemp di CentOS 8
1. Untuk memulakan, kemas kini pakej perisian sistem dan pasang Lemp timbunan (Linux, Nginx, MariaDB / MySQL, dan Php) menggunakan arahan DNF berikut.
# DNF Update # DNF Pasang Nginx PHP-FPM PHP-Common PHP-XML PHP-MBSTRING PHP-JSON PHP-ZIP MARIADB-SERVER PHP-MYSQLND
2. Apabila Lemp Pemasangan selesai, anda perlu memulakan PHP-PFM, Nginx dan Mariadb Perkhidmatan menggunakan arahan SystemCTL berikut.
# Systemctl Mula PHP-FPM Nginx MariaDB # Systemctl Enable PHP-FPM Nginx MariaDB # Systemctl Status PHP-FPM Nginx MariaDB
3. Seterusnya, anda perlu menjamin dan mengeraskan Mariadb enjin pangkalan data menggunakan skrip keselamatan seperti yang ditunjukkan.
# mysql_secure_installation
Jawab soalan berikut untuk menjamin pemasangan pelayan.
Masukkan kata laluan semasa untuk root (masukkan untuk tiada):Masukkan
Tetapkan kata laluan root? [Y/N]y
#Set Kata Laluan Root Baru Keluarkan pengguna tanpa nama? [Y/N]y
Tidak balak log masuk dari jauh? [Y/N]y
Keluarkan pangkalan data ujian dan akses kepadanya? [Y/N]y
Muat semula jadual keistimewaan sekarang? [Y/N]y
4. Sekiranya anda mempunyai Firewalld perkhidmatan berjalan, anda perlu membuka Http dan Https perkhidmatan di firewall untuk membolehkan permintaan klien ke pelayan web nginx.
# firewall-cmd --Zone = public --PerManent --Add-Service = http # firewall-cmd --zone = public --permanent --add-service = https # firewall-cmd--reload
5. Akhirnya, anda boleh mengesahkan bahawa anda Lemp Stack berjalan menggunakan penyemak imbas di alamat IP sistem anda.
http: // server-ipSemak laman web nginx
Langkah 2: Mengkonfigurasi dan mendapatkan PHP-FPM dan Nginx
6. Untuk memproses permintaan dari Nginx pelayan web, PHP-FPM boleh mendengar di soket unix atau soket TCP dan ini ditakrifkan oleh Dengarkan parameter dalam /etc/php-fpm.D/www.Conf fail konfigurasi.
# vi /etc /php-fpm.D/www.Conf
Secara lalai, ia dikonfigurasikan ke Dengarkan pada soket unix seperti yang ditunjukkan dalam tangkapan skrin berikut. Nilai di sini akan ditentukan dalam fail blok pelayan nginx kemudian.
Tetapkan Soket Dengar PHP-FPM7. Sekiranya menggunakan soket Unix, anda juga harus menetapkan pemilikan dan kebenaran yang betul di atasnya seperti yang ditunjukkan dalam tangkapan skrin. Uncomment Parameter berikut dan menetapkan nilai mereka kepada pengguna dan kumpulan untuk memadankan pengguna dan kumpulan Nginx sedang berjalan sebagai.
Dengarkan.pemilik = nginx dengar.kumpulan = nginx dengar.mod = 066Tetapkan Pemilikan Socket Dengar ke Nginx
8. Seterusnya, juga menetapkan zon waktu seluruh sistem di /etc/php.Ini fail konfigurasi.
# vi /etc /php.Ini
Cari garis ";Tarikh.Zon masa"
dan uncomment itu, kemudian tetapkan nilainya seperti yang ditunjukkan dalam tangkapan skrin (gunakan nilai yang dikenakan ke rantau/benua dan negara anda).
Tarikh.zon waktu = Afrika/KampalaTetapkan zon waktu dalam php
9. Untuk mengurangkan risiko Nginx lulus permintaan dari pengguna berniat jahat yang menggunakan sambungan lain untuk melaksanakan kod php ke php-fpm, uncomment parameter berikut dan menetapkan nilai itu kepada 0
.
CGI.fix_pathinfo = 1Selamat php dan nginx
10. Berhubung dengan titik sebelumnya, juga tidak mengisahkan parameter berikut di /etc/php-fpm.D/www.Conf fail. Baca komen untuk penjelasan lebih lanjut.
keselamatan.had_extensions = .php .Php3 .Php4 .Php5 .Php7Hadkan pelaksanaan lanjutan PHP
Langkah 3: Memasang Kerangka PHP Komposer dan Laravel
11. Seterusnya, pasang Komposer pakej dengan menjalankan arahan berikut. Perintah pertama memuat turun pemasang, kemudian menjalankannya menggunakan php.
# curl -ss https: // getcomposer.org/pemasang | PHP # MV Composer.phar/usr/tempatan/bin/komposer # chmod +x/usr/local/bin/komposerPasang komposer di CentOS 8
12. Sekarang itu Komposer dipasang, gunakannya untuk memasang fail dan kebergantungan Laravel seperti berikut. Menggantikan mysite.com Dengan nama direktori di mana fail laravel akan disimpan, laluan mutlak (atau laluan akar dalam fail konfigurasi nginx) akan menjadi /var/www/html/mysite.com.
# cd/var/www/html/ # komposer create-project --prefer-dist laravel/laravel mysite.comPasang Laravel di CentOS 8
Sekiranya semuanya berjalan lancar semasa proses, aplikasi harus dipasang dengan jayanya dan kunci harus dihasilkan seperti yang ditunjukkan dalam tangkapan skrin berikut.
Pemasangan Laravel Lengkap13. Semasa proses pemasangan, .Env
Fail persekitaran dibuat dan aplikasi yang diperlukan juga dihasilkan, jadi anda tidak perlu mencipta mereka secara manual seperti sebelumnya. Untuk mengesahkan ini, jalankan penyenaraian panjang direktori akar laravel menggunakan arahan LS.
# ls -la mysite.com/Senaraikan fail Laravel
14. Seterusnya, anda perlu mengkonfigurasi pemilikan dan keizinan yang betul di penyimpanan dan juga bootstrap/cache Direktori akan ditulis oleh pelayan web nginx.
# chown -r: nginx/var/www/html/mysite.com/penyimpanan/ # chown -r: nginx/var/www/html/mysite.com/bootstrap/cache/ # chmod -r 0777/var/www/html/mysite.com/penyimpanan/ # chmod -r 0775/var/www/html/mysite.com/bootstrap/cache/
15. Jika Selinux didayakan di pelayan anda, anda juga harus mengemas kini konteks keselamatan penyimpanan dan bootstrap/cache direktori.
# sememi fcontext -a -t httpd_sys_rw_content_t '/var/www/html/mysite.com/penyimpanan (/.*)?' # sememi fcontext -a -t httpd_sys_rw_content_t'/var/www/html/mysite.com/bootstrap/cache (/.*)?' # restorecon -rv'/var/www/html/mysite.com '
Langkah 4: Konfigurasikan Blok Pelayan Nginx untuk Laravel
16. Untuk Nginx Untuk mula melayani laman web atau aplikasi anda, anda perlu membuat blok pelayan untuknya .Conf
fail di bawah /etc/nginx/conf.d/ direktori seperti yang ditunjukkan.
# vi/etc/nginx/conf.d/mysite.com.Conf
Salin dan tampal konfigurasi berikut dalam fail. Perhatikan akar dan fastcgi_pass parameter.
pelayan mendengar 80; Server_name mysite.com; root/var/www/html/mysite.com/awam; Indeks indeks.PHP; Charset UTF-8; gzip pada; GZIP_TYPES TEXT/CSS Aplikasi/JavaScript Text/JavaScript Application/X-Javascript Image/SVG+XML Text/Text Plain/XSD Text/XSL Text/XML Image/X-ICON; lokasi / try_files $ uri $ uri / / indeks.php?$ query_string; lokasi ~ \.php termasuk fastcgi.Con; fastcgi_split_path_info ^(.+\.php) (/.+) $; fastcgi_pass unix:/run/php-fpm/www.kaus kaki; lokasi ~ /\.ht menafikan semua;
17. Simpan fail dan periksa sama ada Nginx Sintaks konfigurasi betul dengan berjalan.
# nginx -tSemak konfigurasi Nginx
18. Kemudian mulakan semula PHP-FPM dan Nginx perkhidmatan untuk perubahan baru -baru ini berlaku.
# Systemctl Restart PHP-FPM # Systemctl Restart Nginx
Langkah 5: Mengakses laman web Laravel dari pelayar web
19. Untuk mengakses laman web Laravel di mysite.com, yang bukan nama domain yang berkelayakan sepenuhnya (FQDN) dan ia tidak didaftarkan (ia hanya digunakan untuk tujuan ujian), kami akan menggunakan /etc/hos fail di mesin tempatan anda untuk membuat DNS tempatan.
Jalankan arahan berikut untuk menambah alamat IP pelayan dan domain dalam fail yang diperlukan (ganti nilai mengikut tetapan anda).
# IP Tambah #get Remote Server IP $ echo "10.42.0.21 mysite.com "| sudo tee -a /etc /hostsTambahkan entri DNS dalam fail tempatan
20. Seterusnya, buka penyemak imbas web di mesin tempatan dan gunakan alamat berikut untuk menavigasi.
http: // mysite.comAkses Web Laraval
Anda telah berjaya menggunakan Laravel pada Centos 8. Anda kini boleh mula membangunkan laman web atau aplikasi web anda menggunakan Laravel. Untuk maklumat lanjut, lihat Panduan Bermula Laravel.
- « Cara Memasang Ruby di Centos/RHEL 8
- Cara menetapkan semula kata laluan root yang dilupakan di Linux Mint »