Firefox 44 sürümüyle galiba Web Notification diye bir hizmet desteği daha eklendi.

Haber sitesi veya belki borsa sitesi gibi sık içerik girilen ve takip edilmesi gereken siteler için elzem olabilecek bu özellik girdiğimiz her siteye eklenmeye başlayınca açılışta her sitenin defalarca açtığı saçma bir splash screen haline dönüşüyor.

Biz de madem kullanmıyoruz, kapatalım gitsin.

about:config yazıp yesledikten sonra

dom.webnotifications.enabled değerini arayıp false yapıyoruz ve bitti elveda web notification.

Muhtemelen tarayıcıyı yeniden başlatınca bu ayar aktif olacaktır.

Kaynakça: http://techdows.com/2015/12/disable-firefox-push-notifications.html

Not: Genel olarak web notification’ı kapatmak twitter’ın tweet atmak, retweet ve like gibi temel özelliklerini bozuyor.

Bir buçuk yılda yaptığımız işlerden geriye kalan repostory yığını: 22 adet!

Arada yapıp da repolara almadığımız veya yayına geçmediği için silip attıklarımızla 1,5 yılda neredeyse 30 farklı projeyle uğraşmışım…

Maşallah fena uğraşmışım 🙂

Bir sitenin namaz vakitleri sayfaasında (http://www.haberiyakala.com/istanbul-namaz-vakitleri) rastgele ayet göstermemiz gereken bir alan yer alıyor.

Lakin anlam bütünlüğünü bozmadan, sağlam bir kaynaktan ve rastgele nasıl ayet gösterebiliriz.

Bunun için önce elimizde bir ayet havuzu / ayet arşivi olması gerekiyordu. Birkaç ayet seçkisi bulduk ama onlar da hangi mealden alındığı belli olmadığı için kullanmakta çekindik.

Bu durumda iş başa düştü ve Diyanet İşleri Başkanlığı’nın şu sayfasından (http://mushaf.diyanet.gov.tr) girip konu fihristinden ahlak kısmından ayetleri seçtik.

Bir ayet birden çok alt konuda listelendiği için tekrar edenleri tek sefer kayıt ettik ve elimizde 100 ayet’in Meali oluştu.

işin php tarafına gelirsek.

Okumaya devam et

sudo apt-get install mariadb-server 

dediğim andan itibaren başıma gelenler.

a) Parola tanımlı değil ve tanımlanması gerekiyor…

sudo pkill -9 mysqld
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables --skip-networking & 
mysql -u root
use mysql;
update user set password=PASSWORD("123") where User='root';
update user set plugin='' where User='root';
flush privileges;
\q

Sonra asıl çile başlıyor; data yolunu değiştirmek. Veritabanlarını ayrı bir bölüm olarak bağladığım /c/www-db altında tutmayı tercih ettiğim için, benim için zorunluluk oluyor.

Dönersek, data yolunu nasıl değiştireceğiz!

Önce mysql servisini durduruyoruz.

sudo service mysql stop

Sonra datalarımızı taşıyacağımız hedef klasörü oluşturuyoruz. (Hedef klasör zaten varsa es geçebilirsiniz.) ve veritabanı dosyalarımızı hedef dizine taşıyoruz ve en son hedef dizindeki dosyaları listeliyoruz.

mkdir -p /c/www-db
sudo cp -R /var/lib/mysql/* /c/www-db/
sudo chown -R mysql:mysql /c/www-db
ls -lZ /c/www-db

Şimdi datayolumuzu değiştirmek için conf dosyamızı açabiliriz.

sudo kate /etc/mysql/mariadb.conf.d/50-server.cnf

datadir değerini /c/www-db olarak değiştiriyoruz. bind-address = 127.0.0.1 önüne # işareti koyup yorum haline getiriyoruz.

Sonra servisi tekrar başlatıyoruz.

sudo pkill -9 mysqld
sudo pkill -9 mysql
sudo service mysql restart

gnome-system-monitor ile açıp mysql’in yeni verdiğimiz data yolunu okuyup okumadığını kontrol etmekte fayda var.

Kaynaklar:
* http://www.liberiangeek.net/2014/10/reset-root-password-mariadb-centos-7/
* http://ubuntuforums.org/showthread.php?t=2275033
* http://stackoverflow.com/questions/26474222/mariadb-10-centos-7-moving-datadir-woes

Ne kadar uğraşsam da her kurulum sonrası Apache ve MySQL’i yeniden, kendi çalışma mantığıma göre yeniden kurmam gerekiyor.

Kendi çalışma mantığım derken; ben Ubuntu’yu kurarken

/ -> root
/home
/c
/d

diye ayrı bölümler oluşturup kuruyorum. / -> Root dizini her kurulumda formatlanırken /home /c ve /d dizinlerine hiç dokunmuyorum.

/c dizininde web siteleriyle ilgili yaptığım işleri tutarken
/d dizininde diğer film, müzik, abur cubur dosyaları tutuyorum.

/c/www -> localhost yolum iken
/c/www-db -> veritabanı dosyalarının tutulduğu yol oluyor.

Bu sebeple her kurulumdan sonra dosya yollarını değiştirmem gerekiyor. İlaveten ek olarak kullandığım özellikler ve kütüphaneler de ayrı bir baş ağrısı.

İşte sırf bu yüzden kendime bu dökümanı hazırladım 🙂

Kurulumda php ve memcached birlikte kuruyorum. Arada xdebug, curl, gd, intl, json, mysql, xml ve memcached kütüphanelerini de aktif ediyorum.

Sürpriz bir şekilde Ubuntu 16.04 php 7 ile geliyor ve muhtemelen benim çok başımı ağrıtacak 🙁

Kuruluma geçmeden önce şahsen PPA eklemek taraftarıyım. Böylece en son sürümü kullandığımıza emin olabiliyoruz

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

Sonrasında paket kurulumuna geçiyorum.

sudo apt-get install apache2 php libapache2-mod-php php-cli php-cgi php-xdebug php-curl php-gd php-intl php-json php-mysql php-xml memcached php-memcached php7.0-mbstring

Paketler kurulunca ssl, rewrite vs aktif etmek lazım

sudo a2enmod ssl
sudo a2enmod rewrite
sudo a2enmod suexec
sudo a2enmod include

Sonrasında hata gösterimini aktif etmek için editör ile (ben kate kullanıyorum) ini dosyamızı açıyoruz. php 7 kullandığımız için ini dosyamızın yolu şöyle:

sudo kate /etc/php/7.0/apache2/php.ini

ilgili dosya boş ise bir sürüm üste bakıyoruz

sudo kate /etc/php/7.1/apache2/php.ini

iki değişiklik yapıyoruz; error_reporting arıyoruz ve aşağıdaki gibi düzenliyoruz

;error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
error_reporting = E_ALL & ~E_NOTICE & ~E_WARNING

;display_errors = Off
display_errors = On

Bir kaç php değerine daha dokunmakta fayda görüyorum. Şu değerleri de aşağıdaki gibi düzenliyorum.

;short_open_tag = Off
short_open_tag = On

;memory_limit = 128M
memory_limit = 512M

;post_max_size = 8M
post_max_size = 200M

;upload_max_filesize = 2M
upload_max_filesize = 200M

;max_file_uploads = 20
max_file_uploads = 100

;allow_url_fopen = On
allow_url_fopen = Off 

Çoğu paylaşımlı sunucuda bu değer (allow_url_fopen) kapalı oluyor. Bu sebeple curl kullanmak zorunda kalıyorum ve local ayarlarımı da buna uyumlu tutuyorum.

Buraya kadar olan ayarların etki etmesi için apache’yi yeniden başlatıyoruz.

sudo service apache2 restart

Karşımıza Apache2 default sayfası çıktıysa apache çalışıyor demektir.

Şimdi Apache yolumuzu değiştirelim.

sudo kate /etc/apache2/apache2.conf

aşağıdaki kısmı buluyoruz ve yorum haline getiriyoruz


	Options FollowSymLinks
	AllowOverride None
	Require all denied



	AllowOverride None
	Require all granted



	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted

sonrasında şu direktifi ekliyoruz

DocumentRoot /c/www/  
# bu kısım supheli, test edip bakacağım     
#
#	Options FollowSymLinks     
#	AllowOverride all     
#

	Options FollowSymLinks             
	Options +indexes
	AllowOverride all     
	Order allow,deny       
	allow from all   

Sonrasında virtualhost dosyasındaki documentRoot değerini düzenleyelim

sudo kate /etc/apache2/sites-available/000-default.conf

deyip dosyayı açtıktan sonra DocumentRoot değerini şu şekilde düzenleyelim

	#DocumentRoot /var/www/html
	DocumentRoot /c/www

Sonrasında sunucuyu tekrar başlatalım

sudo service apache2 restart

http://localhost/ adresine tıkladığımızda dosyalarımız artık görünüyorsa büyük bir deveye hendek atlattık demektir.

Şimdi bir test dosyası oluşturup phpinfo() bakabiliriz.

Kaynakça:
* https://forum.ubuntu-tr.net/index.php?topic=24150.0
* http://askubuntu.com/questions/760907/upgrade-to-16-04-php7-not-working-in-browser
* https://help.ubuntu.com/16.04/serverguide/php.html

firefox adres paneline about:config yazıp yönetim he he deyip enterliyoruz.

açılan alanda browser.cache.disk.enable değerini true olduğunu görüyor, çift tıklayarak false haline getiriyoruz

sonrasında browser.cache.memory.enable değerini aratıp false olduğunu görüp çift tıklamayla true hale getiriyoruz.

geriye sadece ne kadar ram kullanacağımızı tanımlamak kaldı. Sağ tıklayıp yeni -> dizge deyip browser.cache.memory.capacity alanını tanımlıyoruz, değeri kısmına -1 yazmamız yetiyor.

Ne işe yarıyor derseniz; firefox’un tarayıcı cache’ini ram’e taşımış olduk.

Kaynak: http://lifehacker.com/5687850/speed-up-firefox-by-moving-your-cache-to-ram-no-ram-disk-required

Ubuntu 16.04 altında Less derlemek için uzun yönteme gerek yokmuş, tek paketi kurmak yeterli…

sudo apt-get install node-less

Sonrasında, evet sonrasında kate’in derleme eklentisinin aktif edilmesi gerekiyor. Sonrasında Kate derleme eklentisine şu yolu göstermek yetiyor.

/usr/bin/lessc %f %n.css

Küçük bir video ekleyeyim.

Biraz makale okudum ama, hiç birisinde benim yöntemim anlatılmamıştı 🙂

Lazım olsa bulunmaz, şunda dursa kötü olmaz.

	$array_city(
		0 => 'Türkiye',
		1 => 'Adana',
		2 => 'Adıyaman',
		3 => 'Afyonkarahisar',
		4 => 'Ağrı',
		5 => 'Amasya',
		6 => 'Ankara',
		7 => 'Antalya',
		8 => 'Artvin',
		9 => 'Aydın',

		10 => 'Balıkesir',
		11 => 'Bilecik',
		12 => 'Bingöl',
		13 => 'Bitlis',
		14 => 'Bolu',
		15 => 'Burdur',
		16 => 'Bursa',
		17 => 'Çanakkale',
		18 => 'Çankırı',
		19 => 'Çorum',
		20 => 'Denizli',

		21 => 'Diyarbakır',
		22 => 'Edirne',
		23 => 'Elazığ',
		24 => 'Erzincan',
		25 => 'Erzurum',
		26 => 'Eskişehir',
		27 => 'Gaziantep',
		28 => 'Giresun',
		29 => 'Gümüşhane',

		30 => 'Hakkari',
		31 => 'Hatay',
		32 => 'Isparta',
		33 => 'Mersin',
		34 => 'İstanbul',
		35 => 'İzmir',
		36 => 'Kars',
		37 => 'Kastamonu',
		38 => 'Kayseri',
		39 => 'Kırklareli',

		40 => 'Kırşehir',
		41 => 'Kocaeli',
		42 => 'Konya',
		43 => 'Kütahya',
		44 => 'Malatya',
		45 => 'Manisa',
		46 => 'Kahramanmaraş',
		47 => 'Mardin',
		48 => 'Muğla',
		49 => 'Muş',

		50 => 'Nevşehir',
		51 => 'Niğde',
		52 => 'Ordu',
		53 => 'Rize',
		54 => 'Sakarya',
		55 => 'Samsun',
		56 => 'Siirt',
		57 => 'Sinop',
		58 => 'Sivas',
		59 => 'Tekirdağ',

		60 => 'Tokat',
		61 => 'Trabzon',
		62 => 'Tunceli',
		63 => 'Şanlıurfa',
		64 => 'Uşak',
		65 => 'Van',
		66 => 'Yozgat',
		67 => 'Zonguldak',
		68 => 'Aksaray',
		69 => 'Bayburt',
		70 => 'Karaman',

		71 => 'Kırıkkale',
		72 => 'Batman',
		73 => 'Şırnak',
		74 => 'Bartın',
		75 => 'Ardahan',
		76 => 'Iğdır',
		77 => 'Yalova',
		78 => 'Karabük',
		79 => 'Kilis',
		80 => 'Osmaniye',
		
		81 => 'Düzce',
	);

Ubuntu Gnome altında KDE araçlarından KATE kullanırken karşıma çıkan bir bug’ı şu kenara not alalım.

kate_bug

Kate kullanırken menülerde ikonlar görünmüyorsa yapmanız gereken tek şey şu paketi kurmak appmenu-qt5

sudo apt-get install appmenu-qt5 libqt5libqgtk2 oxygen-icon-theme

Benim durumumda (Ubuntu Gnome altında KDE uygulaması çalıştırmak) kalırsanız işi kolaylaştırabilir.

Kaynaklar:
* http://askubuntu.com/questions/695409/kate-is-missing-all-button-icons

Firefox eklentileriyle daha da güzelleşen bir internet tarayıcı. Dönem dönem farklı olsa da şu sıralar şu firefox eklentilerini yoğun olarak kullanıyorum…

firefox eklentilerim

Biraz daha detaylandırırsak;

Her Eve Lazım

AdBlock Plus

Reklam engelleme işlevini yerine getiriyor. Farklı olarak AdBlock -> Süzgeç Tercihleri -> İsteğe Bağlı Süzgeçler alanından *banner*, *reklam* kelimeleriyle , dönem dönem bunlara *ads*, *kampanya*, *advertorial*, kelimesini de dahil ederek engelleme yapıyorum.

Element Hiding Helper for Adblock Plus

Sayfa içindeki kimi elementleri seçip, ilgili elementlere göre sayfadaki öğeleri gizlemeye yarıyor. Örnek olarak sitelerin footer alanlarını falan gizleyebiliyorsunuz. Hatta çok takipçisi olan bir sitenin dizi izleme sayfasının adblock plus ile öğeler gizlenmiş ve orjinal hali şöyle olabiliyor.

test1
sayfa

Ghostery

Birçok internet sitesinde en azından google analytic kodu bulunuyor; ilerledikçe facebook like butonundan, twitter like butonuna, bazen yorum servislerinden uçuk rus ve çin takip sitelerine kodlar yeralabiliyor. Ghostery bunları pasif hale getiriyor ve ilgili servislere tarayıcınızın ping atmasını veya ilgili servislerden dosya indirilmesini engelliyor. Böylece internet sayfalarının açılış hızları artarken, sizin de daha az kem gözlerin takibi altında olmanızı sağlıyor…

ZenMate

Twitter veya kimi siteler engellendiğinde ve dns değişikliği ile (şahsen sürekli opendns kullanıyorum) erişilemediğinde işe yarayan bir VPN aracı.

FlashGot

Sitelerdeki videoların url lerini yakalamakta kullanıyorum. Böylece online sitelerde video izlemektense, onları şirkette (mesai bittikten sonra tabii ki, fiber de sağolsun) indirip daha sonra tabletimde veya bilgisayarımda izleyebiliyorum.

DownThemmAll

Çoklu indirmeleri yönetmeyi, indirmeleri belli bir hızla sınırlandırmayı, bazen tek dosyayı birden çok parça ile daha hızlı indirmeyi sağlayan güzel bir araç. Her zaman kuruludur.

Web Geliştiricilerine Özel

FireBug

Sayfa içindeki html nesneleri yakalamayı, online olarak düzenlemeyi, css değişikliklerini daha yayınlanmadan test etmeyi yaptığım bir araç.

JSONView

Json formatında data export eden servisleri tarayıcı üstünde test ederken yardımcı oluyor.

User-Agent Switcher

Site tasarımlarının tarayıcı bazlı kodlarda nasıl göründüğünü test etmekte kullanıyorum. Çok nadir işim düşüyor.

Nimbus Screen Capture

Web sitelerinin tam sayfa ekran görüntüsünü almakta kullanıyorum. Hemen üstteki iki resimde örneği var 🙂

Linux Özel

HTitle

Gnome masaüstünde firefox entegrasyonunu daha uyumlu hale getiren bir eklenti. Tamamen kozmetik.