Cara menginstal kerangka kerja php yii di rhel, centos, rocky dan almalinux

Cara menginstal kerangka kerja php yii di rhel, centos, rocky dan almalinux

Yii adalah kerangka PHP open-source, berkinerja tinggi, fleksibel, efisien, dan aman untuk membangun aplikasi web modern dengan cepat. Ini adalah kerangka kerja pemrograman web yang umum dan penuh untuk menulis kode secara berorientasi objek dan menyediakan banyak fitur yang terbukti dan siap digunakan. Muncul dengan sejumlah default yang masuk akal dan alat bawaan yang membantu Anda menulis kode yang solid dan aman.

Fitur Yii

Berikut adalah beberapa fitur utama Yii:

  • Kerangka kerja berbasis OOP murni.
  • Arsitektur berbasis komponen.
  • Menerapkan pola arsitektur MVC (model-view-controller).
  • Mendukung Pembangun Permintaan dan ActiveSecord untuk database relasional dan NoSQL.
  • Dukungan caching multi-tier.
  • Dukungan pengembangan API yang tenang.
  • Sangat dapat diperluas memungkinkan pengguna untuk menyesuaikan atau mengganti kode apa pun tepat dari inti. Selain itu, pengguna dapat menggunakan atau mengembangkan ekstensi yang dapat didistribusikan kembali.

Yii 2.0 adalah generasi kerangka kerja saat ini (pada saat penulisan) yang membutuhkan PHP 5.4.0 atau di atas tetapi berjalan paling baik dengan versi terbaru PHP 8. Ini mendukung beberapa teknologi dan protokol web terbaru, termasuk komposer, PSR, ruang nama, sifat, dan lainnya.

Menjadi Kerangka Pengembangan Web Generik Bersamaan dengan fitur -fiturnya yang signifikan, Yii Dapat digunakan untuk mengembangkan hampir semua jenis aplikasi web dari portal pengguna/admin, forum, dan sistem manajemen konten (CMS), hingga proyek e-commerce, layanan web yang tenang, dan banyak lagi dalam skala besar.

Persyaratan

  • Sebuah instance lari dari distribusi berbasis RHEL dan RHEL seperti Centos Stream, Rocky, dan Almalinux.
  • Lampu atau Lemp Tumpukan dengan PHP 5.4.0 atau lebih.
  • A Komposer - Manajer Paket Level Aplikasi untuk PHP.

Di artikel ini, kami akan menunjukkan kepada Anda cara menginstal YII PHP Framework pada distribusi berbasis RHEL untuk mulai mengembangkan aplikasi PHP menggunakan Yii.

Pasang lampu atau tumpukan lemp

Yii membutuhkan PHP 5.4 atau lebih dengan server web Apache atau Nginx diinstal di server seperti yang ditunjukkan.

--------- Pasang tumpukan lampu --------- # yum instal httpd php php-mysqlnd php-pdo php-gd php-mbstring zip git --------- Instal Lemp Stack --------- # yum instal nginx php php-mysqlnd php-pdo php-gd php-mbstring zip git 

Setelah diinstal, Anda dapat memulai dan mengaktifkan server web Apache atau Nginx.

# Systemctl Mulai httpd # systemctl Aktifkan httpd atau # systemctl start nginx # systemctl Aktifkan nginx 

Menginstal Yii Menggunakan Komposer

Ada beberapa cara untuk menginstal Yii, tetapi cara yang disarankan untuk menginstal Yii menggunakan Komposer Manajer paket, karena memungkinkan Anda untuk memperbarui YII dengan satu perintah dan juga memungkinkan Anda untuk menginstal ekstensi baru.

Jika Anda belum memilikinya Komposer diinstal di server Anda, Anda dapat menginstalnya dengan menjalankan perintah berikut.

# curl -ss https: // getComposer.org/installer | PHP # MV Composer.phar/usr/lokal/bin/komposer # chmod +x/usr/lokal/bin/komposer 
Instal Composer di Centos 8

Dengan Komposer diinstal, Anda dapat menginstal versi stabil terbaru dari Yii template aplikasi di bawah Apache atau Nginx Direktori yang dapat diakses web dipanggil TestApp. Anda dapat memilih nama direktori yang berbeda jika Anda mau.

# CD/var/www/html/[direktori root apache] atau # cd/usr/share/nginx/html/[nginx root directory] # composer create-project --prefer-sist yiisoft/yii2-app-basic testappapp 
Instal YII PHP Framework di Centos 8

Setelah instalasi selesai, konfigurasikan server web Anda (lihat bagian berikutnya) atau gunakan server web PHP terintegrasi dengan menjalankan perintah berikut di dalam TestApp Direktori Root Proyek.

# cd testapp # php yii melayani 

Catatan: Secara default, server http akan mendengarkan port 8080. Namun, jika port itu sudah digunakan, Anda dapat menggunakan port yang berbeda dengan menambahkan --pelabuhan argumen seperti yang ditunjukkan.

# php yii serve --port = 8888 
Verifikasi Instalasi YII

Sekarang, buka browser Anda dan ketik URL berikut untuk mengakses yang diinstal Yii aplikasi.

http: // localhost: 8888 
Aplikasi YII

Mengkonfigurasi Server Web untuk YII

Di server produksi, Anda mungkin ingin mengkonfigurasi server web Anda untuk melayani Yii Aplikasi Web melalui URL http: // www.contoh.com/index.php alih-alih http: // www.contoh.com/basic/testapp/index.php. Dalam hal ini, Anda harus mengarahkan root dokumen server web Anda ke TestApp/Web direktori.

Konfigurasi Nginx yang Disarankan

Buat file konfigurasi yang dipanggil /etc/nginx/conf.D/TestApp.conf.

# vi/etc/nginx/conf.D/TestApp.conf 

Selanjutnya, salin dan tempel konfigurasi berikut ke dalamnya. Ingatlah untuk menggantikan Tecmintapp.lan dengan nama domain Anda dan /usr/share/nginx/html/testapp/web dengan jalur di mana file aplikasi Anda berada.

server charset UTF-8; client_max_body_size 128m; Dengarkan 80; ## Dengarkan ipv4 #listen [::]: 80 default_server ipv6only = on; ## Dengarkan IPv6 Server_name Tecmintapp.lan; akar /usr/share/nginx/html/testapp/web; Indeks Indeks.PHP; access_log/var/log/nginx/access.catatan; error_log/var/log/nginx/error.catatan; Lokasi /  # Redirect Everything yang bukan file nyata untuk diindeks.PHP TRY_FILES $ URI $ URI / / INDEX.php $ is_args $ args;  # uncomment untuk menghindari pemrosesan panggilan ke file statis yang tidak ada oleh yii #location ~ \.(js | css | png | jpg | gif | swf | ico | pdf | mov | fla | zip | rar) $  # try_files $ uri = 404; # #Error_Page 404/404.html; # DENY mengakses file php untuk lokasi direktori/aset ~ ^/aset/.*\.php $ tolak semua;  Lokasi ~ \.php $ termasuk fastcgi_params; fastcgi_param script_filename $ document_root $ fastcgi_script_name; #fastcgi_pass 127.0.0.1: 9000; fastcgi_pass unix:/run/php-fpm/www.kaus kaki; try_files $ uri = 404;  Lokasi ~* /\. tolak semua;  

Simpan file dan restart Nginx untuk mempengaruhi perubahan terbaru.

# Systemctl restart nginx 

Konfigurasi Apache yang Disarankan

Gunakan konfigurasi berikut di Apache httpd.conf file atau dalam konfigurasi host virtual.

# Set Dokumen Root Menjadi "TestApp/Web" DocumentRoot "/var/www/html/testapp/web" # Use mod_rewrite untuk cukup dukungan URL RE -writeEngine di # if $ showcriptname false di urlManager, jangan mengizinkan mengakses URL dengan skrip dengan nama skrip dengan $ REWRITERULE ^INDEX.php/ - [l, r = 404] # Jika ada direktori atau file, gunakan permintaan langsung writecond %request_filename !-f RE -writecond %request_filename !-D # Sebaliknya meneruskan permintaan untuk mengindeks.PHP REWRITERULE . indeks.PHP #… Pengaturan lain…  

Simpan file dan restart Apache untuk mempengaruhi perubahan terbaru.

# Systemctl restart httpd 

Menguji Aplikasi Web YII melalui browser

Sebelum menguji kami Yii aplikasi web pastikan untuk memperbarui konteks keamanan dari /web/aset/ direktori agar dapat ditulis dengan proses web, dengan menjalankan perintah berikut.

# chcon -r -t httpd_sys_content_rw_t '/usr/share/nginx/html/testapp/web/asets/' [untuk nginx] # chcon -r -t httpd_sys_content_rw_t '/var/www/html/testapp/testapp/uji/' [untuk Apache] 

Selanjutnya, perbarui Firewalld aturan untuk mengizinkan Http Dan Https Permintaan melalui firewall ke server nginx.

# firewall-cmd --zone = public --add-service = http --permanent # firewall-cmd --zone = public --add-service = https --permanent # firewall-cmd --reload 

Akhirnya, uji jika aplikasi web Anda berfungsi dengan baik dan dilayani oleh Nginx atau Apache. Buka browser web dan arahkan ke alamat berikut:

http: // tecmintapp.lan 

Halaman web aplikasi yii default harus ditampilkan seperti yang ditunjukkan pada tangkapan layar berikut.

Halaman aplikasi web yii

Selamat! Anda telah berhasil menginstal generasi terbaru dari YII PHP Framework dan mengonfigurasinya untuk bekerja Nginx atau Apache pada RHEL sistem.

Untuk informasi lebih lanjut dan cara mulai menggunakan Yii Untuk membangun aplikasi web Anda, lihat Panduan Definitif YII.