Selasa, 19 November 2019

Mengatasi masalah TelKom "IndiHome" Ngadat

Sudah dua kali ini per tanggal 20 Nopember 2019, instansi kami mengalami permasalahan untuk mengakses server yang ada di Media Center kami. selalu saja terputus saat akan melakukan proses. Tentu saja kami sebagai pengelola server merasakan beban "mental" yang besar terhadap client (user) kami, yang notabane para Aparatur Sipil Negara dan juga layanan kesehatan di daerah kami. 

Lobi dan negosiasi terkait jaringan kami lakukan kepada Dinas Kominfo dan juga Telkom, tapi membutuhkan waktu yang lumayan lama untuk menjadikan jaringan dan akses ke server lancar, yang paling terasa pada SIMPUS, karena Sistem ini digunakan untuk layanan kesehatan masyarakat. setelah beberapa saat belum juga teratasi, maka kami mendapat saran dari teman, untuk menggunakan VPN nya Opera Browser. maka kemudian kami install opera, dan mengaktifkan VPN, alhamdulillah bisa mengakses server walau dengan terengah-engah. hehehee...

Adapaun langkah-langkahnya sebagai berikut :




Solusi sementara sudah bisa mengatasi permasalahan.

Kamis, 07 November 2019

Script PHP untuk Copy File dari Lokal ke Server

Dalam kasus-kasus tertentu, kita memerlukan data yang tersimpan dalam file txt yang tersimpan di lokal/server tertentu untuk dilakukan proses di tempat/server yang lain. sebagai contoh misal pembayaran PBB, yang dilaksanakan proses pembayaran di Bank/loket pembayaran, kemudian di backup dalam bentuk file txt, yang kemudian file txt tersebut digunakan untuk mengupdate data di server milik bagian Keuangan Pemda. maka dibutuhkan alat untuk mempermudah proses salin file txt tersebut.

langkah-langkah :
1. Buat script PHP untuk dijalankan di server Keuangan :

<?php
$tglfile=date("dmy");//default nama file sesuai backup per tanggal
$filter = "PBB_".$tglfile.".txt";//nama file hasil backup
$local_folder = 'D:\BackupFile';//folder sumber
$proses = new RecursiveDirectoryIterator("$local_folder");
$i=0;//nilai awal $i
foreach(new RecursiveIteratorIterator($proses) as $file)
{ //proses pencarian file

if (!((strpos($file, $filter)) === false) || empty($filter))
  {
        $tampil[] = preg_replace("#/#", "/", $file);
$i++;//jika ditemukan, nilai $i ditambahkan
  } 
}

if($i>0){//jika nilai $i tidak lagi 0, maka proses salin dikerjakan
 
$img = $tampil[0];  
//directory to copy to (must be CHMOD to 777), jika pake linux
$copydir = "./file_transfer/";  //folder tujuan
        $data = file_get_contents($img);   
        $file = fopen($copydir . "".$filter."", "w+"); 
        fputs($file, $data); 
        fclose($file);
}
?>


2. Membutuhkan Cronjob, untuk dijalankan di server Bank, yang disetting ke IP server Bagian keuangan, dan menjalankan script tersebut diatas.

dengan cukup menjalankan Cronjob, maka file txt akan dikirimkan ke Server Keuangan. settingan CronJob bisa diatur sesuai dengan keperluan dari pengguna agar tidak mengganggu kinerja Server.

Selasa, 05 November 2019

Saat Create Folder Bermasalah di Server Linux

Sebelumnya saya ucapkan terimakasih buat sahabat-sahabat group CodeIgniter Indonesia yang sudah memberikan support dan ilmu nya kepada nya.

bermula saat saya ingin menyusun aplikasi untuk dokumen digital pegawai, yang mana dibutuhkan penyimpanan file kepegawaian untuk masing-masing pegawai, yaitu NIP. maka setiap kali memasukkan dokumen digital pegawai akan dibuatkan folder untuk masing-masing pegawai. 

Solusinya ada beberapa langkah :
1. #chmod 775 {folder penyimpanan file pegawai} -R
2. #chown apache {folder penyimpanan file pegawai} -R
3. Off kan SELinux nya di folder /etc/selinux/config, yaitu dengan merubah 

Konfigurasi SELinux di CentOS . Lokasi file di  /etc/selinux/config dan default instalasi seperti dibawah ini:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted


untuk disable SELinux cukup merubah "SELINUX=enforcing" to "SELINUX=disabled" atau SELINUX=PERMISSIVE, seperti terlihat dibawah ini:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted


Kemudian di reboot server, atau dengan perintah :
setenforce 0

Minggu, 23 Juni 2019

Memperbaiki "Too Many Connection" di MySQL/ MariaDB

Pagi ini, saat baru saja membuka lepi, sambil nyekrip tipis-tipis, di waduli sama teman (cewe loo) terkait dengan server yang ia kelola di Dinas Kesehatan DOWN. penyebab down ternyata karena database nya tidak running. pesan yang muncul adalah "too many connections". dia pun panik, oleh karena server itu digunakan untuk layanan SIMPUS se Kabupate Temanggung.

langsung saja aku coba akses lewat PUTTY(no "NG").. aku remote dari kantorku di BKD. aku coba masuk dengan user dan password server dia yang masih aku ingat. bisa masuk ke server. terus aku coba masuk ke database :

#mysql -u root -p

beberapa kali aku coba ternyata gagal. pesan muncul adalah too many connections.

Lalu seperti biasa, aku browsing di google.. beberapa artikel aku buka. tapi yang pertama aku baca :


dibagian bawah yang aku terapkan. yaitu dengan merubah/menambah di file my.conf

#vi /etc/my.conf

aku tambahkan perintah/baris

max_connections = 512

lalu aku simpan file my.conf tersebut, dan aku restart server.

alhamdulillah MySQL/MariaDB bisa berjalan lagi dengan normal.


Terimakasih, semoga bermanfaat.

#Sekelumit Pengalaman



Rabu, 20 Maret 2019

Menghapus file melalui command line linux

Terkadang file di linux tidak bisa terbaca melalui WinSCP (remote). padahal kita akan menghapus file tersebut karena merupakan file log atau file sampah yang hanya menyebabkan hardisk server penuh. saat di #ls, file tersebut tampil, tapi saat dibuka menggunakan WinSCP tidak terlihat. Maka yang dilakukan oleh kita adalah menghapus file melalui command line.
Perintah untuk menghapus file di command line linux adalah #rm , kemudian disertai nama file nya. tapi kadangkala nama file nya begitu panjang, sehingga kesulitan untuk mengetik nya misal saja file log berikut :
access_log-20190304-20190321-195357
untuk mengetik sampai akhir tentu akan kesulitan, padahal ada beberapa file yang akan dihapus. Maka ada cara yang cepat untuk menghapus semua file tersebut:

#rm access_log-*

perintah tersebut akan langsung menghapus file yang nama depannya access_log-

#rm -i access_log-*

perintah tersebut akan menghapus file yang nama depannya access_log- dengan meminta konfirmasi yes/no.

menurut hemat penulis, yang paling aman adalah yang nomor 2. sehingga kita diberi kesempatan memilih, ingin menghapus atau tidak file tersebut.

terimakasih semoga bermanfaat.


Kamis, 28 Februari 2019

Mengatasi COPY paste dari html ke EXCEL....

Mencopy data angka dari html ke excel ternayata tidak selalu sukses. kadang angka ribuan hilang, apalagi yang belakangnya "000". misal 45.000 berubah jadi 45.

Hmm.. itu yang saya alami beberapa minggu terakhir ini. Tapi akhirnya saya mendapatkan solusi. itu karena Separator ribuan dan decimal. Jadi untuk menjadikan SUKSES hasil copyannya, silahkan diubah separator sesuai dengan indonesia separator, yaitu : ribuan dengan menggunakan TITIK (.), dan desimal dengan KOMA (,). merubahnya melalui Excel Option->Advance.

Setelah diubah, silahkan buka kembali Excel dari awal. kemudian paste kan hasil Copy dari html. maka SUKSES deh..

terimakasih, semoga bermanfaat.

Senin, 18 Februari 2019

Tutorial Cara Mengatasi undefined index pada php

Pagi Sahabat semua...

Pagi ini saya ingin berbagi pengalaman dengan sahabat semua. Setelah update xampp versi baru, tentu versi php pun berubah menjadi lebih MUDA. Ternyata dengan perubahan versi php, ada bug error pada program. 

1. undefined index online ..???
2. undefined offset : ???

Awal mula menyelesaikan masalah pertama, saya melakukan pendefinisian variabel yang error tersebut. Coba bayangkan seandainya variabel yang digunakan BEJIBUN, kan bikin MULES.

Setelah googling, ternayata untuk menyelesaikan masalah pertama cukup mudah. Tambahkan diawal program script berikut :

error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));


Akhirnya terselesaikan masalah yang pertama.

untuk masalah yang kedua, itu karna disebabkan pendefinisian array. silahkan sahabat menambahkan isset didepan variabel tersebut.

 if(isset($buf["2"])) {$tgl=$buf["2"]; }


Alhamdulillah masalah selesai . semoga bermanfaat.

sumber : http://www.idiot-attacker.com/2016/02/tutorial-cara-mengilangkan-error-notice.html

Minggu, 17 Februari 2019

Mengatasi file_get_contents yang tidak bisa berfungsi

Melakukan bridging SIMPUS dan data Kependudukan / NIK membutuhkan beberapa langkah. Webservice yang disediakan Dinas Kependudukan untuk diakses datanya dan juga menyiapkan interface untuk menangkap data / parsing data JSON yang dikirim oleh webservice.

Disisi server ada beberapa fungsi yang perlu dijalankan, yaitu file_get_contents. Masalah terjadi saat inteface parsing sudah dibuat, tapi tidak bisa jalan di server SIMPUS.

maka perlu di cek beberapa hal :
1. mod_rewrite enable : ini di setting file httpd.conf
2.allow_url_fopen : di php.ini

setelah di setting, tapi hak akses permission, sehingga bridging belum berhasil. akhirnya ada solusi, bahwa setting SElinux diubah disabled.

Konfigurasi SELinux di CentOS . Lokasi file di  /etc/selinux/config dan default instalasi seperti dibawah ini:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted


untuk disable SELinux cukup merubah "SELINUX=enforcing" to "SELINUX=disabled" atau SELINUX=PERMISSIVE, seperti terlihat dibawah ini:



# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted


Kemudian di reboot server, atau dengan perintah :
setenforce 0


Demikian semoga bermanfaat.


sumber  :https://www.electrictoolbox.com/switch-off-selinux-centos-5/

Rabu, 13 Februari 2019

Cara parsing JSON dengan PHP

Belajar sesuatu yang baru itu mengasyikkan buat saya. Karena hal yang baru itu akan menambah khasanah ilmu dalam diri saya. Tentu hal ini karena untuk menunjang kerja dan tanggungjawab yang saya jalani saat ini.

Parsing data JSON dari webservice kependudukan di Dinas Kependudukan dan Pencatatan Sipil. Data kependudukan ini untuk dimanfaatkan pada Sistem Informasi Puskesmas. Hal ini sangat membantu terutama dalam proses penginputan data pasien.

langkah pertama tentu mendapatkan url webservice dari DISDUKCAPIL.

Misal mendapatkan JSON seperti berikut :

{"content":[{"NIK":"332313xxxxxx0001","NO_KK":"3323xxxxxx120007","NAMA_LGKP":"TRI PURNOMO","JENIS_KLMIN":"LAKI-LAKI","TMPT_LHR":"KEBUMEN","TGL_LHR":"xxxx-xx-xx","GOL_DARAH":"B","AGAMA":"ISLAM","STATUS_KAWIN":"KAWIN","STAT_HBKEL":"KEPALA KELUARGA","PDDK_AKH":"DIPLOMA IV\/STRATA I","JENIS_PKRJN":"PEGAWAI NEGERI SIPIL (PNS)","NAMA_LGKP_IBU":"xxxxxx","NAMA_LGKP_AYAH":"xxxxx","NO_PROP":"33","PROP_NAME":"JAWA TENGAH","NO_KAB":"23","KAB_NAME":"xxxxxxxx","NO_KEC":"3","KEC_NAME":"xxxxxxxxx","NO_KEL":"1014","KEL_NAME":"MUNGSENG","ALAMAT":"LINGK. DALEMAN ASRI","NO_RT":"4","NO_RW":"4","DUSUN":null}],"lastPage":true,"numberOfElements":1,"sort":null,"totalElements":1,"firstPage":true,"number":0,"size":10}


Proses selanjutnya adalah mengolah JSON dengan json_decode :

$jsonfile = "alamat_url_webservice";
$data = json_decode(file_get_contents($jsonfile), true);
 print_r($data); //untuk menampilkan data array dari JSON

echo "NIK : ".$data['content'][0]['NIK']; //formula untuk menampilkan data NIK

jika menginginkan disimpan di variabel :

$nik=$data['content'][0]['NIK'];

Demikian seklumit pengalaman tentang parse JSON. semoga bermanfaat.





Mengatasi Error query GROUP BY di Mysql 5.7

Error seperti ini terjadi karena terdapat sql_mode only_full_group_by di settingan mysql. Contoh error yang tampil ketika mengeksekusi query group by.
Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘supportdesk.modusersgroups.groupid’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sqlmode=onlyfullgroupby
Sedangkan cara simple agar querynya berjalan dengan menambahkan id dari table tersebut, misal
  SELECT * FROM users GROUP BY salary, id ORDER BY salary ASC
Dengan menambahkan id di group by query tersebut bisa dijalankan, namun bukan itu hasil yang diinginkan.
Cara mengatasinya:
  • Buka file configurasi mysql
    sudo nano /etc/mysql/my.cnf
  • Untuk beberapa kasus, file configurasi my.cnf tesebut berada di tempat berbeda
    /usr/local/etc/my.cnf
  • Tambahkan config untuk sql_mode di baris terakhir
[mysqld]
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
  • Simpan dan tutup file configurasi tersebut
    Karena di atas menggunakan nano, maka bisa menekan perintah ctrl+okemudian tekan enter untuk menyimpan, dan ctrl+x untuk keluar.
  • Jalankan ulang / restart service mysql
    sudo service mysql restart
    atau jika menggunakan homebrew bisa menggunakan
    brew services restart mysql
  • Jalankan kembali query yang menggunakan group by.
Saya kemarin mendapatkan error seperti di atas di local saya, dan membutuhkan waktu sekitar 30 menit untuk mencari tahu penyebab dan cara mengatasi. Semoga dengan saya menuliskan kembali dan membagikan hal yang pernah saya alami tersebut bisa memangkas waktu teman-teman agar tidak terbuang banyak. Jika ada yang perlu didiskusikan, silakan berkomentar di bawah. Saya sangat senang jika teman-teman mengajak diskusi dengan saya.
Semoga bermanfaat.
sumber : https://afrijaldzuhri.com/mengatasi-error-group-by-di-mysql/

Senin, 28 Januari 2019

DNS Telkom Speedy tidak bisa membuka website tertentu cek perubahan DNS


Setting DNS tidak perlu dirubah bila koneksi tidak bermasalah. 

Masalah muncul pada 19 Juli 2013 pagi, dan terlihat sudah normal tanpa perlu perubahan setting DNS Telkom

Bila mengunakan layanan internet Telkom Speedy dan mengalami masalah tidak bisa membuka website tertentu. Tetapi website lain berjalan normal. Kemungkinan masalah di DNS dan bisa mengunakan DNS dari Telkom. Tidak jelas mengapa ada beberapa website tidak bisa di akses pada pagi hari, tapi kembali normal pada sore hari.

Beberapa website tidak bisa dibuka, atau di cek dengan Ping lalu tidak muncul nomor IP dari situs yang dituju. Sedangkan website lainnya berjalan dengan baik. Bisa diperbaiki koneksi Speedy dengan berubah nomor DNS di computer

Masalah DNS bisa di selesaikan dengan merubah IP DNS ke DNS Telkom dibawah ini

  • Click Control Panel - Network Connection - Local Area Connection
  • Click bagian Property - Internet Protocol (TCP-IP) - di click 2 kali di bagian Internet Protocol atau pilih Properties
Pilih Alternate Configuration dan masukan nomor di bawah ini pada bagian
  • Preferred DNS server 202.134.0.155
  • Preferred DNS server 203.130.193.74
Alternatif nomor lain untuk DNS Telkom 
  • Jakarta 202.134.0.155 , 203.130.196.5 , 203.130.196.155
  • Bandung 202.134.2.5
  • Surabaya 202.134.1.10
  • Batam 203.130.193.74 , 61.94.230.13
  • Semarang 203.130.208.18
  • Medan 203.130.206.250
Alternatif nomor DNS dapat mengunakan DNS milik Google.com lebih menjamin untuk kecepatan
  • Preferred DNS server 8.8.8.8
  • Preferred DNS server 8.8.4.4
Alternatif nomor OpenDNS
  • 208.67.222.222
  • 208.67.220.220

Cara lain untuk merubah dari sisi DNS Router bagi semua perangkat

Setting DNS bisa dirubah di Router langsung, tanpa perlu merubah di semua computer dan perangkat smartphone dan tablet.

sumber  : http://www.obengplus.com/articles/2226/1/DNS-Telkom-Speedy-tidak-bisa-membuka-website-tertentu-cek-perubahan-DNS.html

Selasa, 22 Januari 2019

Enable Curl on Xampp

The problem?.. curl was not enabled by default in Xampp.  You receive the following error:
  • Fatal error: Call to undefined function curl_init() in C:\xampp\htdocs\tayst\\index.php on line 4
The solution?  These simple steps!
Step 1. Stop all Xampp services: Apache, Mysql, Filezilla, and Mercury.
Step 2. Open the following files in your editor of choice. (Replace C:\xampp with the location of your xampp install)
  • C:\xampp\apache\bin\php.ini
  • C:\xampp\php\php.ini
  • C:\xampp\php\php5.ini
  • C:\xampp\php\php4\php.ini
  • C:\xampp\php\php4\php4.ini
Step 3. Find the following code in each of the files, and remove the ; (semicolon) at the beginning of the line. You will most likely see it at line 546 or line 582.
  • old line – ;extension=php_curl.dll
  • new line – extension=php_curl.dll
Step 4. Start your apache services.
See what an easy fix to curl on xampp by simply removing a few semicolons.  Happy Coding!

sumber : http://grapethinking.com/enable-curl-on-xampp

Rabu, 02 Januari 2019

Tutorial Cara Mengatasi Team Viewer Yang Expired

Hii Guyss kali ini Admin Fahmi-Cyber akan memberikan tutorial Cara Mengatasi Team Viewer Yang Expired.  Bagi anda yang pengguna TeamViewer , Mungkin  anda menggunakan Team Viewer Versi Gratis atau Free Lisense pernah tanpa sengaja mengupgrade menjadi versi pro dengan masa trial tersebut habis sehingga teamviewer tersebut tidak bisa digunakan lagi. Dicoba install lagi pun tetap minta yang yang berbayar. Mau tidak mau anda harus membeli yang berbayar.

Namun Anda jangan panik dulu karena saya akan memberi trik nya Team Viewer tidak suka expired / keluar dengan sendirinya. langsung saja tanpa basa basi lagi nih berikut cara nya .


1. Pertama Uninstal Program TeamViewer terlebih dahulu

2. Klik Start lalu Run lalu ketik %appdata% lalu anda delete folder TeamViewernya

3. Masuk Registri , Caranya : Start lalu Run lalu ketik regedit lalu enter
Hapus folder teamviewer pada hkey_current_user/software/teamviewer and hklm/software/teamviewer

4. Ganti MAC Address LAN card, caranya: masuk Ctrl Panel lalu Network Connection lalu Local area connection lalu properties lalu Configure lalu Advance lalu Network Adress lalu isikan dengan “001A3F25454E”

5. Instal kembali deh program TeamViewer nya , yang baru anda download di http://www.teamviewer.com dengan pilihan personal/non commercial use

6. Selesai dech , sekarang teamviewer anda tidak lagi berstatus trial.

Oke Guys itu lah cara Mengatasi Team Viewer Yang Expired. Semoga artikel ini bermanfaat bagi anda. Jangan lupa sharing ya ! :) .

sumber : https://fahmi-cyber.blogspot.com/2016/06/tutorial-cara-mengatasi-team-viewer.html