Setup Nginx PHP-FPM MariaDB & Codeigniter di Ubuntu 16.04 LTS

PHP7 sudah tersedia di Ubuntu 16.04 LTS Xenial Xerus, jadi kita tidak perlu mengandalkan software pihak ketiga untuk meng-install php7 di ubuntu. Tutorial ini akan menjelaskan bagaimana meng-install Nginx, MariaDB, dan PHP-FPM (LEMP Stack) di ubuntu 16.04 LTS Xenial Xerus

Langkah 1: Update Ubuntu 16.04 LTS

Sebelum meng-install software apapun, usahakan untuk eng-update repositori dan paket software. jalankan perintah di bawah ini di ssh terminal

sudo apt update

sudo apt upgrade

Langkah 2: Install Nginx Web Server

Nginx adalah salah satu web server dengan performa yang tinggi. dapat juga digunakan sebagai reverse proxy. Jalankan perintah di bawah ini untuk mulai menginstall Nginx

sudo apt install nginx

Setelah terinstall, konfigurasikan Nginx secara otomatis dijalankan ketika Ubuntu dijalankan.

sudo systemctl enable nginx

Kemudian start Nginx dengan perintah ini:

sudo systemctl start nginx

Untuk cek status:

systemctl status nginx

Output:

● nginx.service - A high performance web server and a reverse proxy server
 Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
 Active: active (running) since Sat 2016-06-04 08:31:23 EDT; 1 day 2h ago
 Main PID: 298 (nginx)
 CGroup: /system.slice/nginx.service
 ├─298 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
 └─299 nginx: worker process

enabled” artinya pada saat Ubuntu booting, secara otomatis Nginx dijalankan.

Pada browser,masukkan IP Public server Ubuntu 16.04 LTS. Anda akan melihat halaman”Welcome to Nginx” yang artinya Nginx sudah berjalan dengan benar

 

Kemudian, kita perlu mengatur agar www-data (Nginx User) sebagai owner dari direktori web root)

sudo chown www-data /usr/share/nginx/html -R

Langkah 3: Install MariaDB

MariaDB merupakan pengganti dari MySQL yang dikembangkan oleh anggota utama dari MySQL yang fokus pada akusisi Oracle untuk menjadikan MySQL produk non-open source. Banyak yang menggunakannya seperti Arch Linux, Fedora, Google, Wikipedia dsb, migrasi ke MariaDB.

sudo apt install mariadb-server mariadb-client

Setelah terinstall, cek status MariaDB

systemctl status mysql

Output:

● mysql.service - LSB: Start and stop the mysql database server daemon
 Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled)
 Active: active (running) since Wed 2016-04-20 18:52:01 EDT; 1min 30s ago
 Docs: man:systemd-sysv-generator(8)

Jika tidak berjalan (running), jalankan perintah di bawah ini:

sudo systemctl start mysql

Untuk meng-otomatiskan ketika Ubuntu 14.04 pada saat restart:

sudo systemctl enable mysql

Sekarang, jalankan perintah instalasi di bawah ini:

sudo mysql_secure_installation

Ketika ditanya password root MariaDB, tekan ENTER karena kita belum mengaturnya, kemudian masukkan password root MariaDB dan konfirmasi password yang baru.

 

Langkah berikutnya tekan ENTER untuk semua pertanyaan, mulai dari menghapus user anonymous, disable remote root login dan menghapus database test. Langkah ini merupakan syarat dasar dari keamanan MariaDB

 

Langkah 4: Install PHP7

Jalankan perintah di bawah ini untuk meng-install PHP7 dan ekstensi PHP7

sudo apt install php7.0-fpm php7.0-mbstring php7.0-xml php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl

Ekstensi php (modul) diperlukan untuk CMS (content management system) seperti wordpress, joomla, dsb. sebagai contoh jika tidak ada modul ekstensi php7.0-xml, maka pada halaman wordpress misalnya akan kosong dan pada log error Nginx akan ada pesan seperti ini:

PHP message: PHP Fatal error: Uncaught Error: Call to undefined function xml_parser_create()
 Installing these PHP extensions ensures that your CMS runs smoothly.

Sekaran jalankan php7.0-fpm

sudo systemctl start php7.0-fpm

Check status:

systemctl status php7.0-fpm

Sample output:

● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager
 Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor pre
 set: enabled)
 Active: active (running) since Wed 2016-04-20 19:21:05 EDT; 2s ago

Langkah 5: Create a Default Nginx Server Block File

Hapus symlink bawaan di direktori sites-enabled

sudo rm /etc/nginx/sites-enabled/default

Kemudian buat file default server block baru di direktori /etc/nginx/conf.d/

sudo nano /etc/nginx/conf.d/default.conf

Paste-kan teks di bawah ini, ganti 111.222.333.444 dengan IP server atau domain server Anda

server {
 server_name 111.222.333.444;

root /var/www/html;  #sesuaikan dengan direktori web root
 index index.php index.html;

# set expiration of assets to MAX for caching
 location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
 expires max;
 log_not_found off;
 }

location / {
 # Check if a file or directory index file exists, else route it$
 try_files $uri $uri/ /index.php;
 }

location ~ \.php($|/.+) {

fastcgi_pass 127.0.0.1:9000;

fastcgi_split_path_info ^(.+\.php)(/.*)$;
 fastcgi_param SCRIPT_FILENAME $request_filename;
 include fastcgi_params;
}

location /subdir_codeigniter/ {
 alias /var/www/html/subdir_codeigniter/;
 try_files $uri $uri/ /subdir_codeigniter/index.php;

location ~ \.php$ {
 fastcgi_split_path_info ^(.+\.php)(/.+)$;
 fastcgi_index index.php;
 fastcgi_pass 127.0.0.1:9000;
 include /etc/nginx/fastcgi_params;
 fastcgi_param SCRIPT_FILENAME $request_filename;
 }
}

}

Di sini saya akan mengupload codeigniter di sub-direktori subdir_codeigniter, dan web-root saya upload dengan CMS WordPress, tutorialnya bisa di buka di sini

Tutup file dan test konfigurasi Nginx kemudian reload

sudo nginx -t

sudo systemctl reload nginx

Langkah 6: Test PHP

untuk mengetahui versi PHP7, jalankan perintah ini:

php --version

Output:

PHP 7.0.15-7ubuntu2 (cli) ( NTS )
 Copyright (c) 1997-2016 The PHP Group
 Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
 with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Untuk pengecekanPHP-FPM, buat file test.php di direktori web-root

sudo nano /usr/share/nginx/html/test.php

Ketikkan kode di bawah ini.


<?php phpinfo(); ?>

Simpan dan tutup file dari editor, dan panggil file test.php di browser 111.222.333.444/test.php

 

Jika muncuk informasi mengenai proses PHP dan table PHP Info berarti PHP berjalan dengan baik di Ubuntu 16.04 LTS

 

Untuk kemanan hapus file test.php

sudo rm /var/www/html/test.php

Langkah 7: Download CodeIgniter

https://codeigniter.com/download

Upload ke direktori subdir_codeigniter sesuai dengan konfigurasi defaul.conf yang telah kita atur sebelumnya.

Sesuaikan file config.php pada Application/config/ dengan mengubah base_url dan hilangkan index.php pada index_page

$config['base_url'] = 'http://111.222.333.444/subdir_codeigniter/';

$config['index_page'] = ' ';

Selamat, CodeIgniter sudah bisa berjalan di server Ubuntu 16.04 dengan web server Nginx. Untuk konfigurasi database menggunakan MariaDB akan kita bahas pada tutorial berikutnya

Google Map API v3 Biostall Libary

Demo: http://biostall.com/demos/google-maps-v3-api-codeigniter-library/

Download: https://github.com/BIOSTALL/CodeIgniter-Google-Maps-V3-API-Library/archive/master.zip

  • Download library (ukuran ~ 190KB)
  • Paste di direktori Application/libraries. Ada dua file, Googlemaps.php dan Jsmin.php
  • Pada file view.php (atau file apapun untuk menampilkan map) sebelum tag </head> paste script di bawah ini

<?php echo $map['js']; ?>

  • dan paste script di bawah ini untuk menampilkan map di antara tag <body> dan </body>

<?php echo $map['js']; ?>

PHP 7.0:  Error Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP

jika Anda memakai PHP7 maka akan ada error di baris atas website seperti ini

pada file Application/libraries/Googlemaps.php

ubah baris di bawah ini


function Googlemaps($config = array()) {

menjadi seperti ini


function __construct($config = array()) {

tampilan editornya

Tips & Trik Windows 10 Yang Keren

Tips Windows 10 ini akan membuat Anda seperti ahli komputer dan keren yang bisa dicoba saat ini juga. Windows 10 merupakan Operating System yang sukses besar dan membawakan pengalaman baru dan fleksibilitas bagi pengguna yang menggunakan OS keluaran Microsoft ini.

Seperti Anda dapat mengatur tata letak jendela program yang sedang dipakai/aktif dengan menekan dan tahan rombol WINDOWS + UP/DOWN/LEFT/RIGHT.

Create Virtual Desktop

Lanjutkan membaca “Tips & Trik Windows 10 Yang Keren”

Hack Modem Speedy ZTE F609

Bagaimana Cara Hack Modem Speedy ZTE f609? Ingin tahu password admin modem ZTE F609 tanpa harus reset modem? Dengan menggunakan celah factory-default dari ZTE F609 kita bisa mengetahui password admin nya.

Langkah-langkah Hack Modem Speedy F609:

1. Buka CMD, ketikkan telnet (aktifkan terlebih dahulu telnet client)
2. Pada command line, ketikkan telnet
3. ketik ” o 192.168.1.1 ” (IP dari modem ZTE F609)
4. Login User: root, Password: Zte521
5. ketikkan perintah ” sendcmd 1 DB p DevAuthInfo ”
6. cari user admin dan passwordnya

Lihat Tutorial Video Hack Modem Speedy F609

Kombinasi Warna Web Safe Untuk Desain – ColourLovers.com

Warna

Sebagai seorang desainer grafis tukang edit kadang saya merasa _blank dengan komposisi warna yang tepat. Dalam artian tidak menyalahi aturan tak-tertulis desain grafis dimana kombinasi warna yang sesuai dapat meningkatkan prestige desain kita. Sehingga tujuan dan maksud dari desain tersebut akan tersampaikan secara maksimal.

Contohnya Biru dan Hitam adalah dua kombinasi warna yang tidak bagus. Disitu kadang saya merasa sedih kalau ada yang menggunakan campuran 2 warna atau lebih yang tidak pas (menurut saya loh…) Lanjutkan membaca “Kombinasi Warna Web Safe Untuk Desain – ColourLovers.com”

Konfigurasi SSH/OpenSSH Ubuntu Server 14.04

ssh_server

Apa itu SSH? Pengertian dan fungsi SSH (Secure Shell) Pengertian dan fungsi SSH (Secure Shell) – Pengertian SSH adalah akronim dari Secure Shell yang merupakan sebuah protokol jaringan yang memanfaatkan kriptografi untuk melakukan komunikasi data pada perangkat jaringan agar lebih aman.

Contents

  • Introduction
  • Disable Password Authentication
  • Disable Forwarding
  • Specify Which Accounts Can Use SSH
  • Rate-limit the connections
  • Log More Information
  • Display a Banner
  • Troubleshooting

Lanjutkan membaca “Konfigurasi SSH/OpenSSH Ubuntu Server 14.04”

[Fixed] “Setup was unable to create a new system partition or locate an existing system partition” during installing Windows 8.1(8, 7, Vista, etc) from USB

setup-was-unable-to-create-a-new-system-partition-or-locate-an-existing-system-partition-see-the-setup-log-files-for-more-informationPada saat install windows versi apapun dari flashdisk USB, apalagi laptop keluaran terbaru (kasus saya ASUS X200M) yang sistem BIOS-nya menggunakan UEFI (apa itu UEFI?)

Ada beberapa artikel yang menyebutkan harus update BIOS, seperti tautan di bawah ini,

  1. https://ohna2s.wordpress.com/2014/11/05/install-windows-7-di-asus-x200ma-update-bios/
  2. http://tegsnda.blogspot.co.id/2014/09/install-windows-7-di-asus-x200ma.html

*Untuk update BIOS di halaman http://www.asus.com/Notebooks_Ultrabooks/X200MA/HelpDesk_Download/

Tapi tidak ada satupun yang berhasil, karena BIOS yang ada di laptop sudah up to date (versi tertinggi menurut di website update bios) Lanjutkan membaca “[Fixed] “Setup was unable to create a new system partition or locate an existing system partition” during installing Windows 8.1(8, 7, Vista, etc) from USB”

Memperbaiki Instalasi Net Framework: Failed to Install

Pagi ini saya mencoba menginstal Net Framework 4.0 di komputer kerja karena beberapa software seperti Corel membutuhkan Framework untuk bisa dijalankan secara optimal. Apa itu Framework?

Microsoft .NET Framework (dibaca Microsoft Dot Net Framework) atau lebih dikenal dengan singkatan dot net (tidak berhubungan dengan domain .net) merupakan sebuah perangkat lunak kerangka kerja yang berjalan utamanya pada sistem operasi Microsoft Windows, saat ini .NET Framework umumnya telah terintegrasi dalam distribusi standar Windows (mulai dari Windows Server 2003 dan versi-versi Windows yang lebih baru). Kerangka kerja ini menyediakan sejumlah besar pustaka pemrograman komputer dan mendukung beberapa bahasa pemrograman serta interoperabilitas yang baik sehingga memungkinkan bahasa-bahasa tersebut berfungsi satu dengan lain dalam pengembangan sistem. Berbeda halnya dengan tipikal aplikasi konvensional umumnya, program yang ditulis dengan memanfaatkan .NET Framework berjalan pada lingkungan perangkat lunak melalui Common Language Runtime, dan bukan perangkat keras secara langsung. Hal ini memungkinkan aplikasi yang dibuat di atas .NET secara teoritis dapat berjalan pada perangkat keras apapun yang didukung oleh .NET Framework. Perangkat lunak ini adalah kunci penawaran utama dari Microsoft, dan dimaksudkan untuk digunakan oleh sebagian besar aplikasi-aplikasi baru yang dibuat untuk platform Windows.

selengkapnya bisa dilihat di sini.

nah, permasalahan muncul ketika proses instalasi berlangsung, biasanya prosesnya memakan waktu agak lama karena harus terkoneksi internet dan menunggu proses download file sebesar 30 MB. Tapi kali ini cepet banget dan ada pesan Error di akhir instalasi

Tampilan Error Instalasi Net Framework 4.0 - Silumansupra
Tampilan Error Instalasi Net Framework 4.0

Setelah itu saya nyari di google untuk solusi permasalahan ini dan ketemu !!! berikut ini langkah2nya

  1. Buka CMD (WIN + R)
  2. Ketikkan perintah NET STOP “WUAUSERV” (Perintah ini untuk me-nonaktifkan Windows Update)
  3. Buka CMD lagi dan ketikkan %WINDIR% untuk membuka langsung folder Windows tanpa harus klik Windows Explorer
  4. Cari folder bernama SoftwareDistribution dan rename folder tadi dengan nama “SDold
  5. Kemudian buka CMD tadi (jika belum ditutup, kalu terlanjur ditutup buka CMD lagi) dan ketikkan NET STOP “WUAUSERV” (Perintah ini untuk mengaktifkan Windows Update)
  6. Jalankan lagi instalasi Net Framework tadi
  7. jika tetap tidak berhasil, tinggalkan komentar di bawah ini,

Untuk download Net Framework berbasis web (butuh koneksi internet) Klik Di Sini!

untuk offline installer Klik Di Sini!