Postingan

Menampilkan postingan dari 2016

Connect SQL Server di Qt App

Pertama-tama buat project Qt (Biar mudah kita akan menggunakan Qt Console). Setelah project terbentuk, pertama-tama buka file .pro. Kita perlu mengubah dari:

QT+=coremenjadiQT+=coresqlKemudian buka file main.cpp menjadi:#include<QCoreApplication>#include<QtSql/QSqlDatabase> #include<QtDebug> #include<QtSql/QSqlError> intmain(intargc,char*argv[]){ QCoreApplicationa(argc,argv); QStringdbHost="localhost"; // Nama ServerQStringdbUser="sa"; // Nama UserQStringdbPass=""; // Password jika adaQStringdbName="yudha"; // Nama DatabaseQSqlDatabasedb=QSqlDatabase::addDatabase("QODBC3"); db.setConnectOptions();QStringdsn= QString("DRIVER={SQLServer};SERVER=%1;DATABASE=%2;UID=%3;PWD=%4;") .arg(dbHost).arg(dbName).arg(dbUser).arg(dbPass); db.setDatabaseName(dsn);if(db.open()){qDebug()<<"Opened";db.close();}else{qDebug()<<"Error="<<db.lastError().text();} return…

PHP-FPM di semua server (virtual host) di Nginx

Pertama-tama buat dulu file configurasi untuk php-fpm. Misalkan kita buat di /etc/nginx/php.conf dengan content sebagai berikut:

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
Kemudian di setiap server ditambahkan: include (misalkan filenya setting servernya ada di /etc/nginx/sites-enabled/default untuk ubuntu atau /etc/nginx/nginx.conf di centos). contoh:

server {
     listen 80;
     root /usr/share/nginx/html;
     index index.html index.htm index.php;
     server_name www.yudha.id;

include /etc/nginx/php.conf;
}

server {
     listen 80;
     root /var/www/html;
     index index.html index.php;
     server_name blog.yudha.id;

include /etc/nginx/php.conf;
}

Redirect http ke https di Nginx

server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri;}

Memberi Warna Git Branch di Linux (Ubuntu, CentOS, dll)

Tambahkan tulisan berikut di file ~/.bashrc (/home/nama_user/.bashrc)

parse_git_branch() {
 git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}

color_prompt=yes

if [ "$color_prompt" = yes ]; then
 PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
 PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi

Mendapatkan Redirect URL di Spring ketika login

SavedRequest savedRequest = new HttpSessionRequestCache().getRequest(request, response);
try {
            String redirectUrl = savedRequest.getRedirectUrl();
}
catch (Exception e) {
            String redirectUrl = "";
}

Open URL di Android

String url ="http://yudha.id";Intent i =newIntent(Intent.ACTION_VIEW); i.setData(Uri.parse(url)); startActivity(i);

MD5 di Java

public static String getMD5Hash(String text) throws Exception{ byte[] bytesOfMessage = text.getBytes("UTF-8");MessageDigest md = MessageDigest.getInstance("MD5"); md.update( bytesOfMessage ); byte[] md5sum = md.digest(); BigInteger bigInt = new BigInteger(1, md5sum); String MD5Hash = bigInt.toString(16);while ( MD5Hash.length() < 32 ) { MD5Hash = "0" + MD5Hash; } return MD5Hash; }

Git: Menampikan Nama Branch di Terminal

Gambar
Buka file .bashrc di home (misalkan menggunakan nano) dengan perintah:
$ nano ~/.bashrc

Lalu tambahkan kode berikut di bagian paling bawah:
parse_git_branch() {
   git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
color_prompt=yes
if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi
unset color_prompt force_color_prompt Lalu simpan. (Tekat Ctrl+O jika menggunakan nano). Lalu tutup aplikasi (Ctrl+X jika menggunakan nano). Buka ulang terminal jika perlu.

Mengaktifkan Userdir Apache2 di Ubuntu

Agar Apache server bisa mengakses dokumen public_html di folder user, maka lakukan langkah berikut:
Buka Terminalketik: sudo a2enmod userdirKemudian restart service apache2 dengan mengetik perintah: sudo service apache2 restart Sekarang folder public_html pada tiap-tiap user sudah bisa diakses. Misalkan user yudha, maka sekarang sudah bisa diakses di http://localhost/~yudha

Redirect Top Level Domain di NGINX

Misalkan kita ingin memindahkan yudha.id dan www.yudha.id ke yudha.web.id, maka buat rewrite rule di /etc/nginx.conf (untuk centos, jika di ubuntu biasanya ada di /etc/nginx/sites-enabled/default.conf) seperti berikut:

server {
        listen 80;
        server_name "~^(www\.|)yudha\.id";
        rewrite ^(.*) $scheme://yudha.web.id$1 permanent;
}

Mengakses Komputer Host dari Komputer Remote dengan SSH Tunnel

Beberapa hari yang lalu saya ingin mengoneksikan dua buah komputer yang ada di dua tempat berbeda (kedua buah komputer menggunakan sistem operasi linux). Satu ada di Jakarta, yang lainnya ada di Bandung. Tujuan saya adalah mengirim data backup dari Jakarta ke Bandung. Cuma yang menjadi masalah adalah komputer tujuan saya di Bandung tidak punya IP publik dan routernya tidak bisa diakses karena suatu sebab. Jadi satu-satunya cara adalah komputer di Bandung yang pergi mengakses ke komputer di Jakarta yang memiliki IP publik. Untuk melakukannya, saya menggunakan ssh.
Tapi melakukan ssh dari Bandung ke Jakarta saja belum cukup, karena saat Bandung berhasil konek ke Jakarta, yang terjadi adalah komputer Bandung bisa mengakses isi komputer di Jakarta tetapi komputer Jakarta tidak bisa mengakses isi komputer Bandung. Agar bisa melakukannya bolak-balik dua arah, maka dibutuhkan parameter tambahan saat melakukan koneksi ssh, yaitu dengan cara forwarding port komputer remote dengan local port d…

Halo

Ini adalah tulisan pertama saya. Tunggu tulisan-tulisan selanjutnya. Sampai jumpa.