Cara Memasang Rangka Kerja Yii PHP di Ubuntu

Cara Memasang Rangka Kerja Yii PHP di Ubuntu

Yii (diucapkan Yee atau [ji:]) adalah rangka kerja pengaturcaraan web generik yang bebas dan cepat, selamat, fleksibel, dan fleksibel, dan efisien untuk membangunkan semua jenis aplikasi web menggunakan PHP.

Dalam artikel ini, anda akan belajar cara memasang versi terkini dari Rangka Kerja Yii dalam Ubuntu LTS (Sokongan Jangka Panjang) Dilancarkan untuk mula membangunkan aplikasi web PHP moden.

Sokongan Platform

Yii memegang siaran Ubuntu LTS (sokongan jangka panjang) berikut:

  • Ubuntu 20.04 LTS ("Focal")
  • Ubuntu 18.04 LTS ("Bionic")
  • Ubuntu 16.04 LTS ("Xenial")

Keperluan

  • Contoh berlari pelayan Ubuntu.
  • Timbunan lemp dengan php 5.4.0 atau ke atas.
  • Seorang Komposer - Pengurus Pakej Tahap Permohonan untuk PHP.

Pada halaman ini

  • Memasang Rangka Kerja Yii melalui Komposer di Ubuntu
  • Menjalankan Yii Menggunakan Pelayan Pembangunan PHP
  • Menjalankan projek yii dalam pengeluaran menggunakan pelayan HTTP nginx
  • Dayakan HTTPS pada aplikasi Yii menggunakan Let's Encrypt

Terdapat dua cara untuk memasang Yii, menggunakan Komposer Pengurus Pakej atau dengan memasangnya dari fail arkib. Yang pertama adalah cara yang disyorkan, kerana ia membolehkan anda memasang sambungan atau kemas kini baru Yii oleh satu arahan.

Memasang Rangka Kerja Yii melalui Komposer di Ubuntu

Sekiranya anda tidak mempunyai Komposer dipasang, anda boleh memasangnya menggunakan arahan berikut, yang kemudiannya akan dipasang Yii dan menguruskan kebergantungannya.

$ curl -ss https: // getcomposer.org/pemasang | PHP $ SUDO MV COMPOSER.phar/usr/tempatan/bin/komposer $ sudo chmod +x/usr/local/bin/komposer 
Pasang komposer di Ubuntu

Sebaik sahaja anda memasang komposer, masuk ke direktori /var/www/html/ Yang akan menyimpan fail aplikasi web atau laman web anda, kemudian pasang Yii pakej menggunakan komposer (Ganti TestProject dengan nama direktori aplikasi web anda).

$ cd/var/www/html/$ komposer create-project --prefer-dist yiisoft/yii2-app-basic TestProject 
Pasang kerangka Yii di Ubuntu

Menjalankan Yii Menggunakan Pelayan Pembangunan PHP

Pada ketika ini, anda sudah bersedia untuk mula menggunakan Yii Rangka kerja untuk pembangunan. Untuk menjalankan pelayan pembangunan PHP, masuk ke TestProjects Direktori (nama direktori anda harus berbeza bergantung pada apa yang anda tentukan dalam perintah sebelumnya), kemudian lancarkan pelayan pembangunan. Secara lalai, ia harus dijalankan di port 8080.

$ cd/var/www/html/testproject/$ php yii berkhidmat 
Jalankan Pelayan Pembangunan Yii

Untuk menjalankan pelayan pembangunan di pelabuhan lain, contohnya, port 5000, menggunakan --pelabuhan bendera seperti yang ditunjukkan.

$ php yii servis --port = 5000 
Jalankan Pelayan Pembangunan Yii di pelabuhan yang berbeza

Kemudian buka penyemak imbas web anda dan navigasi menggunakan alamat berikut:

http: // server_ip: 8080 atau http: // server_ip: 5000 

Menjalankan projek yii dalam pengeluaran menggunakan pelayan HTTP nginx

Untuk menggunakan dan mengakses a Yii aplikasi dalam pengeluaran, memerlukan pelayan HTTP seperti Nginx, APACHE/HTTPD, atau perisian pelayan web yang disokong lain.

Untuk mengakses Yii Permohonan tanpa menaip port anda, anda perlu membuat DNS yang diperlukan A rekod untuk menunjukkan domain anda ke anda Yii Pelayan Aplikasi Rangka Kerja.

Tetapkan Domain Rekod untuk Aplikasi Yii

Untuk panduan ini, kami akan menunjukkan cara menggunakan a Yii permohonan dengan Nginx. Oleh itu, anda perlu membuat fail konfigurasi host atau pelayan maya di bawah /etc/nginx/sites-tersedia/ direktori untuk permohonan anda sehingga Nginx boleh berkhidmat.

$ sudo vim/etc/nginx/sites-available/testproject.saya.Conf 

Salin dan tampal konfigurasi berikut di dalamnya (ganti TestProjects.saya dan www.TestProjects.saya dengan nama domain anda). Juga tentukan cara Nginx akan lulus Fastcgi permintaan ke PHP-FPM, Dalam contoh ini, kami menggunakan soket Unix (/RUN/PHP/PHP7.4-fpm.kaus kaki):

pelayan set $ host_path "/var/www/html/testproject"; #access_log/www/testproject/log/akses.log utama; nama pelayan TestProjects.saya www.TestProjects.saya; root $ host_path/web; Tetapkan $ yii_bootstrap "indeks.php "; charset utf-8; lokasi / indeks indeks.html $ yii_bootstrap; try_files $ uri $ uri / / $ yii_bootstrap?$ args;  lokasi ~ ^/(dilindungi | rangka kerja | tema/\ w+/views) deny all;  #Avoid Pemprosesan panggilan ke fail statik yang tidak dapat diselesaikan oleh lokasi Yii ~ \.(js | css | png | jpg | gif | swf | ico | pdf | mov | fla | zip | rar) $ try_files $ uri = 404;  # lulus skrip php ke pelayan fastcgi mendengar di lokasi soket unix ~ \.php fastcgi_split_path_info ^(.+\.php) (.*) $; #let Yii menangkap panggilan ke fail php yang tidak menetapkan $ fsn /$ yii_bootstrap; jika (-f $ document_root $ fastcgi_script_name) set $ fsn $ fastcgi_script_name;  fastcgi_pass Unix:/Run/PHP/PHP7.4-fpm.kaus kaki; termasuk fastcgi_params; fastcgi_param script_filename $ document_root $ fsn; #Path_info dan path_translated boleh ditinggalkan, tetapi RFC 3875 menentukan mereka untuk CGI fastcgi_param path_info $ fastcgi_path_info; fastcgi_param path_translated $ document_root $ fsn;  # mencegah nginx daripada melayani dotfiles (.Htaccess, .svn, .git, dll.) lokasi ~ /\. menafikan semua; akses_log off; log_not_found off;  

Simpan fail dan tutupnya.

Kemudian periksa Nginx sintaks konfigurasi untuk ketepatan, jika ok, aktifkan aplikasi baru seperti yang ditunjukkan:

$ sudo nginx -t $ sudo ln -s/etc/nginx/sites -available/testprojects.saya.conf/etc/nginx/enabled/testprojects.saya.Conf 

Kemudian mulakan semula perkhidmatan nginx untuk menggunakan perubahan baru:

$ sudo systemctl mulakan semula nginx 

Kembali ke pelayar web anda dan navigasi dengan nama domain anda.

http: // testprojects.saya atau http: // www.TestProjects.saya 
Akses aplikasi Yii menggunakan domain

Dayakan HTTPS pada aplikasi Yii menggunakan Let's Encrypt

Terakhir, anda perlu membolehkan Https di laman web anda. Anda boleh menggunakan sijil SSL/TLS percuma (yang diiktiraf dan diiktiraf oleh semua pelayar web moden) atau memperoleh sijil dari CA komersial.

Sekiranya anda memutuskan untuk menggunakan sijil Let's Encrypt, ia boleh dipasang dan dikonfigurasikan secara automatik dengan menggunakan Certbot alat. Untuk memasang Certbot, anda perlu memasang SNAPD untuk memasangnya.

$ sudo snap install -Certbot Classic 

Kemudian gunakan Certbot Untuk mendapatkan dan memasang/mengkonfigurasi sijil SSL/TLS percuma anda untuk digunakan dengan pelayan web nginx (berikan e -mel yang sah untuk pembaharuan dan ikuti arahan untuk menyelesaikan pemasangan):

$ sudo certbot --nginx 
Dayakan HTTPS pada Aplikasi Yii Nginx

Sekarang pergi ke pelayar web anda sekali lagi untuk mengesahkan bahawa anda Yii Permohonan kini berjalan Https (Ingat Http harus secara automatik mengarahkan ke Https).

http: // testprojects.saya atau http: // www.TestProjects.saya 
Aplikasi Yii berjalan di HTTPS

Untuk maklumat lanjut seperti menyambungkan aplikasi anda ke pangkalan data, lihat dokumentasi Rangka Kerja Yii dari laman web Projek YII rasmi. Cubalah dan kongsi pendapat anda Yii atau tanya sebarang soalan melalui borang maklum balas di bawah.