Sharing seputar Dunia Tkj dan Blogging ^^

Showing posts with label web server. Show all posts
Showing posts with label web server. Show all posts

Saturday, November 5, 2016

Install dan Konfigurasi Centos Web Panel (CWP)


Menggunakan Control Panel pada suatu server atau VPS dapat meringankan waktu Anda untuk memasangan software segala sesuatu yang dibutuhkan, untuk membangun suatu web hosting misalnya, webserver seperti Apache atau Nginx, mail server, DNS server, database server, FTP server dan lain sebagainya. Memasang seluruh software tersebut secara manual satu per-satu dapat menghabiskan banyak waktu dan juga memiliki peluang untuk gagal mengkonfigurasi. Oleh karena itu kita membutuhkan suatu control panel yang mana fungsi utamanya yakni "menghemat waktu".

Tulisan kali ini, penulis akan memperkenalkan suatu control panel yang free lagi open source dan powerful bernama Centos Web Panel atau disingkat dengan CWP. Apa itu CWP? CWP adalah suatu control panel yang powerful berbasis web yang free lagi open source, yang mana diciptakan didesain untuk newbie yang ingin membangun suatu web hosting dengan mudah, juga dengan CWP dapat mengambil alih atau mengatur seluruh kegunaan server dalam tampilan web, oleh kerenanya kita tidak perlu lagi mengatur server melalui SSH console.

Sesuai dengan namanya CWP hadir hanya untuk Centos saja. Juga CWP saat ini hadir hanya untuk pengguna Centos 5 dan 6. Bagi Anda pengguna Centos 7, ia masih tahap pengembangan.

Pada tutorial ini, penulis mencontohkan dengan menggunakan Centos 6.8 32bit, jika Anda pengguna Centos 6 dalam versi minor lainnya seperti versi 6.8 ke bawah atau pengguna 64bit, tutorial ini akan tetap dapat dipergunakan, karena memang CWP hanya butuh saat ini versi Centos 5 atau 6. Langsung saja kita mulai praktek memasangnya!

Pertama-tama pastikan repository server telah terupdate.
$ sudo yum update
Kemudian kita masuk ke direktori /usr/local/src dan unduh skrip instalasi CWP tersebut
$ cd /usr/local/src
$ sudo su
# wget http://centos-webpanel.com/cwp-latest
Setelah selesai kita mengunduh skrip CWP, langsung saja kita pasang CWP nya.
# sh cwp-latest
Maka proses installasi akan berjalan, ia akan memasang seluruhnya dari mulai webserver, database server dan lain sebagainya. Lihat gambar di bawah ini:
Tunggu sampai proses selesai, proses instalasi akan memakan waktu yang cukup lama dikarenakan CWP memasang seluruh kebutuhan web server. Jika sudah selesai, sekarang kita reboot seperti gambar di bawah ini. Sebelum reboot pastikan Anda sudah mencatat username dan password yang tertera, seperti gambar di bawah ini:
Langsung saja Anda buka dari browser Anda CWP tersebut:
Login dengan root dan password root Anda, hasilnya akan seperti gambar di bawah ini:
Jika ada beberapa pesan peringatan (Warning) seperti contoh gambar di atas, Anda bisa langsung klik tombol nya, ia akan otomatis terpasang.

Luar biasa bukan? Semoga bermanfaat. :)

Tuesday, November 1, 2016

Implementasi uWSGI dan Nginx Sebagai Server Python Apps di Ubuntu


Sebelumnya kita telah membahas tentang Nginx sebagai webserver yang menjalankan skrip PHP.

Pada tulisan kali ini kita akan membahas tentang bagaimana cara menjalankan skrip python di web server dengan menggunakan Nginx. Saya tidak membahas tentang teori, fokus pada tulisan ini hanyalah praktek.
Langsung saja kita mulai praktek. Pertama-tama kita pasang dahulu Python dan Nginx di Ubuntu.
$ sudo apt-get update
$ sudo apt-get install python-dev python-pip nginx
Lalu kita pasang virtualenv dengan pip.
$ sudo pip install virtualenv
$ sudo pip install uwsgi
Sebagai contoh kita buat direktori di /home dengan nama mypy:
$ mkdir ~/mypy/
$ cd ~/mypy
Kemudian kita buat virtualenv.
$ virtualenv myapp
Lalu buat skrip python sederhana
$ nano ~/mypy/wsgi.py
Dan isikan skrip python itu seperti di bawah ini:

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/html')])
    return ["<h1 style='color:blue'>Halo Linuxku.com!</h1>"]
Lalu coba kita jalankan:
$ uwsgi --socket 0.0.0.0:8080 --protocol=http -w wsgi
Jika sudah seperti gambar di bawah ini, berarti kita susah sukses memasang uWSGI.
Langkah selanjutnya kita buat uWSGI tersebut jalan di deamon. Berikut ini saya sediakan hanya skrip untuk Ubuntu 14.04 yang mana menggunakan Upstart.

Buat berkas myapp.ini
$ nano ~/mypy/myapp.ini
Lalu isikan seperti berikut:
[uwsgi]
module = wsgi:application

master = true
processes = 5

socket = myapp.sock
chmod-socket = 664
vacuum = true

die-on-term = true
Dan kita buat skrip untuk Upstart:
$ sudo nano /etc/init/myapp.conf 
Masukan skrip berikut:

description "uWSGI instance to serve myapp"

start on runlevel [2345]
stop on runlevel [!2345]

setuid ali
setgid www-data

script
    cd /home/ali/mypy
    . myapp/bin/activate
    uwsgi --ini myapp.ini
end script
Dan coba kita jalankan
$ sudo start myapp
Jika sudah seperti gambar di bawah ini:
Berati sudah sukses. Lalu kemudian coba kita implentasikan di Nginx:
$ sudo nano /etc/nginx/sites-available/default
Kemudian isikan seperti berikut:
server {
    listen 80;
    server_name server_domain_or_IP;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:/home/ali/mypy/myapp.sock;
    }
}
Pastikan konfigurasi Nginx berjalan dengan sempurna, coba kita cek terlebih dahulu dengan:
$ sudo nginx -t
Jika sudah beres langsung saja kita restart Nginx
$ sudo service nginx retart
Sekarang Anda bisa langsung akses skrip python Anda di browser seperti gambar berikut:

Semoga bermanfaat :)

Thursday, October 27, 2016

Memasang Nginx dan PHP-Fpm di Ubuntu 14.04/16.04 LTS


Nginx (baca: engine x) adalah server HTTP dan Proxy dengan kode sumber terbuka (source code) Nginx dapat pula berfungsi sebagai proxy IMAP/POP3 (Wikipedia).

Salah satu keunggulan Nginx dibandingkan dengan Apache yakni terletak pada ringannya serta memiliki konfigurasi yang simpel lagi mudah. Meskipun hingga saat ini pengguna terbanyak web server adalah Apache, bukan berarti Nginx tidak banyak, justru Nginx termasuk pengguna terbanyak pula setelah Apache.

Pada tutorial kali ini penulis akan menampilkan tentang bagaimana cara memasang Nginx sebagai web server, disertai php-fpm yang mana berguna untuk membaca skrip php. Jika sebelumnya Anda pengguna Apache, tidaklah asing bagi Anda tentang php-apache, ya, Apache memiliki module tersendiri untuk membaca skrip PHP, lain hal dengan Nginx, kita perlu php-fpm untuk menjalankan skrip PHP tersebut dengan sebagaimana mestinya.
Langsung saja kita mulai praktek. Pertama-tama masuk ke Server Anda dengan ssh. Sebelum beranjak ke pemasangan Nginx dan php-fpm, ada baiknya kita sinkronisasikan terlebih dahulu database repository lokal dengan pusat, untuk memastikan seluruh paket sudah terbaru.
$ sudo apt-get update
Lalu kita pasangan Nginx:
$ sudo apt-get install nginx nginx-common nginx-core
Anda bisa menggunakan nginx-full untuk mendapatkan beberapa tambahan dari Nginx, akan tetapi hemat saya cukup untuk nginx-core dan nginx-common saja.

Kemudian kita pasang php-fpm:
--- Untuk pengguna Ubuntu 14.04 ---
$ sudo apt-get install php5-fpm php5 php5-gd php5-common
--- Untuk pengguna Ubuntu 16.04 ---
$ sudo apt-get install php7.0-fpm php7.0 php7.0-gd php7.0-common
Anda sudah bisa langsung mengakses Nginx Anda di browser:
Dan dapat menambahkan hanya file html di /usr/share/nginx/html/. Secara default Nginx tidak membaca file PHP, jadi jika Anda meletakan file PHP di sana ia akan membaca sebagaimana file.

berikut ini contohnya:
Ketika kita mengakses ver.php di browser dikenali sebagai file, sehingga memunculkan popup download atau save file. Oleh karena itu kita perlu mengatur konfigurasi Nginx dengan memanfaatkan php-fpm. Caranya adalah sebagai berikut:

Kita buka pengaturan default situs di /etc/nginx/sites-available/default:
$ cd /etc/nginx/sites-available
$ sudo mv default default.bak
$ sudo nano default
Buat pengaturan seperti di bawah ini:
server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        root /usr/share/nginx/html;
        index index.php index.html index.htm
        server_name localhost;

        location / {
         try_files $uri $uri/ /index.php?$args;
        }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_intercept_errors on;

        # Hilangkan tanda pagar di samping bagi Anda Pengguna Ubuntu 16.04
        # fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        # Bagi Anda pengguna Ubuntu 14.04
        fastcgi_pass unix:/var/run/php5-fpm.sock;

        fastcgi_index index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

   location ~ /\.ht {
        deny all;
   }
}
Lalu kemudian kita edit php.ini, pasti Anda sudah mengatahui di mana letak php.ini. Cara termudah untuk mengetahuinya yakni:
$ php -i | grep php.ini
Jika sudah seperti gambar di atas langsung saja kita edit dengan nano:
$ sudo nano /etc/php5/cli/php.ini
Cari kata cgi.fix_pathinfo= dengan cara menekat tombol CTRL+W
Hapus tanda titik koma (semicolon) dan ganti cgi.fix_pathinfo=0 seperti gambar di bawah ini:
Kemudian langsung kita restart Nginx:
$ sudo service nginx restart
Untuk memastikan apakah Nginx sudah dapat menjalan skrip php atau belum kita bisa membuat skrip percobaan yakni:
$ sudo nano /usr/share/nginx/html/ver.php
Dan isikan skrip seperti berikut:
<?php
phpinfo();
 

Dan langsung saja kita coba di browser:
Jika seperti gambar di atas artinya Anda telah sukses memasang Nginx dan php-fpm. Semoga bermanfaat :)