Pada postingan sebelumnya saya telah memberikan ulasan mengenai cara menginstall Laravel, sekarang saya menuliskan cara instal Yii2. Yii sama halnya dengan Laravel yakni sebuah PHP Framework. Oke, saya tidak memberikan penjelasan menganai defini Yii di sini, karena fokus artikel ini adalah cara penginstalannya. Langsung saja kita mulai.
Prainstal Yii 2
Sebelum tahap instalasi Yii 2 ada beberapa kriteria yang harus Anda penuhi yakni:
* PHP dengan versi minumum 5.4
* Adanya Composer (Anda bisa lihat cara penginstalanya: <a href="https://situsali.com/tag/composer/" target="_blank">https://situsali.com/tag/composer/</a>)
* Beberapa _extension / module_ yang perlu diaktifkan di `php.ini` yakni:
* gd.so
* imagick.so (pengguna Archlinux: `sudo pecl install imagick`)
* memcache.so
* apcu.so
* zip.soJika Anda merujuk pada pengaturan yang `php.ini` saya yakni:
extension=bcmath.so extension=bz2.so extension=calendar.so extension=curl.so extension=dba.so extension=enchant.so extension=exif.so extension=ftp.so extension=gd.so extension=gettext.so extension=gmp.so extension=iconv.so extension=imap.so extension=intl.so extension=ldap.so extension=mcrypt.so ;extension=mssql.so extension=mysql.so extension=mysqli.so ;extension=odbc.so ;zend_extension=opcache.so extension=openssl.so extension=pdo_mysql.so extension=pdo_odbc.so extension=pdo_pgsql.so extension=pdo_sqlite.so extension=pgsql.so extension=phar.so extension=posix.so extension=pspell.so extension=shmop.so extension=snmp.so extension=soap.so extension=sockets.so extension=sqlite3.so extension=sysvmsg.so extension=sysvsem.so extension=sysvshm.so extension=tidy.so extension=xmlrpc.so extension=xsl.so extension=zip.so extension=apcu.so extension=memcache.so extension=imagick.so
* Menonaktifkan `expose_php` pada `php.ini`
* Buat Authentication pada Github (<a href="https://situsali.com/menghilangkan-authentication-github-pada-composer/">Menghilangkan Authentication Github pada Composer</a>).
Cara Instal Yii 2
Ada dua cara menginstal Yii2 ini yakni; cara pertama (disarankan ) menggunakan Composer pertama-tama ambil dahulu dependensinya:
composer global require "fxp/composer-asset-plugin:1.0.0"
Kemudian Anda bisa melakukan dua cara berikut:
composer create-project yiisoft/yii2-app-basic _**NAMA_PROYEK_ANDA** _ 2.0.4 composer create-project yiisoft/yii2-app-advanced _**NAMA_PROYEK_ANDA** _ 2.0.4
Contohnya:
Saya ingin membuat Yii saya dengan nama yiiku
, maka saya mengetik pada Terminal sebagai berikut:
composer create-project yiisoft/yii2-app-advanced yiiku 2.0.4
Kemudian cara yang kedua dengan Anda unduh langsung dari Github cara ini tidak saya sarankan karena dengan cara ini Anda tidak mengetahui perkembangan Yii2 baik dari segi perbaikan bug, fitur ataupun yang lainnya. Akan tetapi hal itu tidaklah menjadi masalah jika Anda masih tahap pembelajaran :-D
Pilih salah satunya:
* <a href="https://github.com/yiisoft/yii2/releases/download/2.0.4/yii-basic-app-2.0.4.tgz">Yii 2 with basic application template</a>
* <a href="https://github.com/yiisoft/yii2/releases/download/2.0.4/yii-advanced-app-2.0.4.tgz">Yii 2 with advanced application template</a>
Tahap Cek Konfigurasi Yii2
Jika Anda sudah selesai menginstal Yii2 pada komputer Anda, langkah selanjutnya yakni tahap cek server Anda caranya:
https://localhost/_**NAMA_YII2_ANDA** _/requirements.php
Dalam contoh di sini saya telah membuat proyek Yii2 ini dengan nama yiiku maka untuk mengeceknya saya tidak ketik:
https://localhost/yiiku/requirements.php
Pastikan semua keterangan Details daripada Yii2 tersebut dalam result Passed atau gampangnya berwarna hijau semua. Seperti berikut:
Details
Name | Result | Required By | Memo |
---|---|---|---|
PHP version | Passed | Yii Framework | PHP 5.4.0 or higher is required. |
Reflection extension | Passed | Yii Framework | |
PCRE extension | Passed | Yii Framework | |
SPL extension | Passed | Yii Framework | |
MBString extension | Passed | Multibyte string processing | Required for multibyte encoding string processing. |
OpenSSL extension | Passed | Security Component | Required by encrypt and decrypt methods. |
Intl extension | Passed | Internationalization support | PHP Intl extension 1.0.2 or higher is required when you want to use advanced parameters formatting in `Yii::t()`, non-latin languages with `Inflector::slug()`, IDN-feature of `EmailValidator` or `UrlValidator` or the `yii\i18n\Formatter` class. |
ICU version | Passed | Internationalization support | ICU 49.0 or higher is required when you want to use `#` placeholder in plural rules (for example, plural in Formatter::asRelativeTime()) in the `yii\i18n\Formatter` class. Your current ICU version is 55.1. |
Fileinfo extension | Passed | File Information | Required for files upload to detect correct file mime-types. |
DOM extension | Passed | Document Object Model | Required for REST API to send XML responses via `yii\web\XmlResponseFormatter`. |
PDO extension | Passed | All DB-related classes | |
PDO SQLite extension | Passed | All DB-related classes | Required for SQLite database. |
PDO MySQL extension | Passed | All DB-related classes | Required for MySQL database. |
PDO PostgreSQL extension | Passed | All DB-related classes | Required for PostgreSQL database. |
Memcache extension | Passed | MemCache | |
APC extension | Passed | ApcCache | |
GD PHP extension with FreeType support | Passed | Captcha | Either GD PHP extension with FreeType support or ImageMagick PHP extension with PNG support is required for image CAPTCHA. |
ImageMagick PHP extension with PNG support | Passed | Captcha | Either GD PHP extension with FreeType support or ImageMagick PHP extension with PNG support is required for image CAPTCHA. |
Expose PHP | Passed | Security reasons | "expose_php" should be disabled at php.ini |
PHP allow url include | Passed | Security reasons | "allow_url_include" should be disabled at php.ini |
PHP mail SMTP | Passed | Email sending | PHP mail SMTP server required |
Komentar