Nasıl Yapılır

Nginx Sunucuda .htaccess Yönergeleri

Nginx .htaccess

Nginx sunucularda .htaccess ayarları nasıl yapılır?

Nginx nedir?

Nginx rus yazılım mühendisi Igor Sysoev tarafından geliştirilen hafif, stabil, hızlı bir mail istemcisi olarak kodlanan daha sonraları geliştirilerek tüm sunucular için uygun hale getirilen bir web sunucusudur.

Nginx özellikle yüksek trafikli ve yoğun istek girişi olan web siteleri için biçilmiş kaftandır. Single Thread yanıt yapısıyla sayfayı tek seferde indirip sayfa açılma hızında farkedilir büyük bir artış sağlar. Ayrıca nginx apache ve litespeed ile karşılaştırıldığında çok daha az cpu kullanır. Bu sebeple Nginx vps sunucular için biçilmiş kaftandır.

İnsanların Nginx i tercih etmemesinin en büyük sebebi destek sıkıntısı ve kurulum zorluğudur ancak nginx e hakim olan bir insan için yapılamayacak pek az şey vardır. Nginx kurulumunu bu yazımızda anlatmıştık. Nginx sunucularda .htaccess çalışmaması herkesin canını sıksakmakta. Şimdi size vhost dosyalarını düzenleyerek .htaccessde yazdığımız birçok kodun nginx karşılığını örneklerle yazacagız.

"/etc/nginx/sites-available/" dizinindeki eklediğimiz vhost dosyalarını yeniden düzenlemeniz gerekmekte.

Nginx sunucularda Drupal için temiz url (mod_rewrite) çalıştırma

  server {
     listen       80;
     server_name  example.org;

     location / {
         root   /path/to/drupal;
         index  index.php;
         error_page 404 = @drupal;
     }

     location @drupal {
         rewrite ^(.*)$ /index.php?q=$1 last;
     }
 }

Drupal sitelerde temiz url(clean urls) kullanmak için kalın olarak yazılmış satırları vhost dosyanıza eklemeniz yeterli olucaktır. Daha sonra Drupal yönetici panelinizden clean urls'i aktif etmeyi unutmayınız.

vhost dosyalarımızı her düzenlediğimizde nginx sunucunuza restart atmayı unutmayın. Aksi takdirde yaptığınız değişikler yürürlüğe girmeyecektir.

Debian tabanlı sunucular için;

service nginx restart

Nginx sunucularda Wordpress için temiz url (mod_rewrite) çalıştırma

  server {
     listen       80;
     server_name  example.org;

     location / {
         root   /path/to/wordpress;
         index  index.php;
         error_page 404 = @wordpress;
     }

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

Wordpress sitelerde temiz url kullanmak için kalın olarak yazılmış satırları vhost dosyanıza eklemeniz yeterli olucaktır.
Vhost dosyalarımızı her düzenlediğimizde nginx sunucunuza restart atmayı unutmayın. Aksi takdirde yaptığınız değişikler yürürlüğe girmeyecektir.

Debian tabanlı sunucular için;

service nginx restart

Nginx sunucularda Opencart için temiz url (mod_rewrite) çalıştırma


server {
     listen       80;
     server_name  example.org;

     location / {
         root   /path/to/opencart;

location / {
         try_files $uri @opencart;
}
      location @opencart {
      rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
     location /admin {
     index index.php;
}

OpenCart sitelerde temiz url kullanmak için kalın olarak yazılmış satırları vhost dosyanıza eklemeniz yeterli olucaktır.
Vhost dosyalarımızı her düzenlediğimizde nginx sunucunuza restart atmayı unutmayın. Aksi takdirde yaptığınız değişikler yürürlüğe girmeyecektir.

Debian tabanlı sunucular için;

service nginx restart

Nginx sunucularda www siz girişleri www li adrese nasıl yönlendirebilirim?

server {
        listen *:80;

        server_name domain.com www.domain.com;

        root   /path/to/domain;

        if ($http_host = "domain.com") {
            rewrite ^ $scheme://www.domain.com$request_uri? permanent;
        }

Şeklinde vhost dosyanızı düzenleyerek sitenize domain.com seklinde giriş yapmak istiyenleri www.domain.com adresine yönlendiricektir.

Nginx sunucularda hata sayfalarını benim belirlediğim sayfalara nasıl yönlendirebilirim?


        error_page 400 /error/400.html;
        error_page 401 /error/401.html;
        error_page 403 /error/403.html;
        error_page 404 /error/404.html;
        error_page 405 /error/405.html;
        error_page 500 /error/500.html;
        error_page 502 /error/502.html;
        error_page 503 /error/503.html;
        recursive_error_pages on;
        location = /error/400.html {

            internal;
        }
        location = /error/401.html {

            internal;
        }
        location = /error/403.html {

            internal;
        }
        location = /error/404.html {

            internal;
        }
        location = /error/405.html {

            internal;
        }
        location = /error/500.html {

            internal;
        }
        location = /error/502.html {

            internal;
        }
        location = /error/503.html {

            internal;
        }

vhost dosyalarını düzenleyerek oluşturduğunuz bir hata sayfasına yol gösterebilirsiniz. Örnek amaçlı böyle bir dizin yazdım. Bunu siz kendinize göre düzenleyebilirsiniz.

Daha sonraki yazılarda nginx ile farklı işlerin nasıl yapıldığına dair yazmaya devam edeceğiz.

Uzman bir destek almak isterseniz bizimle iletişim kurmaktan çekinmeyiniz.

Mutlu kodlamalar.

Drush (Drupal Shell) Nedir?

Drush nedir?

Drush kelimesi Drupal ve Shell kelimelerinin ilk hecelerinin birleştirilmesiyle oluşturulmuştur. Drupal kabuğu anlamına gelen Drush, Drupal ile geliştirilmiş siteleri kontrol etmek, işletmek ve geliştirmek için kullanılan bir kabuk tabanlı uygulamadır.

Drush ile neler yapabileceklerimizi sonraki bölümlerde ele alacağız fakat bu aşamada Drupal'in çekirdek güncellemesinin zorluğundan yakınanlara iyi bir haberimiz var! Drush en çok sizin yüzünüzü güldürecek.

Drush ile hangi işlemler yapılabilir?

Drush uygulaması ile saniyeler içinde çekirdek, modül ve/veya tema güncellemelerini yapabilirsiniz. Modülleri aktifleştirebilir ve/veya deaktif hale getirebilirsiniz. Modül ve tema indirebilirsiniz. Sitenizin yedeğini alabilir veyahut aldığınız yedeği sitenize geri yükleyebilirsiniz. Zen, Omega, Adaptive gibi popüler taban temaların alt temalarını oluşturabilir, oluşturduğunuz temaları aktifleştirebilirsiniz. Temiz url ye müdehalede bulunabilir, hatta drupal kurulu olmayan bir dizine drupalin en güncel ve stabil sürümünü indirebilirsiniz...

Şimdi yukarıda bahsettiğim işlemleri nasıl yapabileceğimizden bahsedelim. Tabiki önce Drush kurulumunu yapmamız gerek.

Drush kurulumu/güncellemesi

Burada yapacağımız kurulum Ubuntu dağıtımı içindir.

sudo apt-get install php-pear

satırı ile php-pear ı sistemimize yüklüyoruz.

Sonrasında aşağıdaki komutları sırayla uygulayarak drush kurulumumuzu gerçekleştiriyoruz.

pear channel-discover pear.drush.org

pear install drush/drush

drush version

Mevcut drush sürümümüzü güncellemek için ise aşağıdaki komutu kullanıyoruz.

pear upgrade drush/drush

Drush kurulummuzu tamamladıktan sonra gelin bahsettiğimiz işlemleri nasıl yapacağımıza bakmadan önce temel birkaç şey öğrenelim.

Drush ile işlem yapmak için komut satırımıza drush ile başlıyoruz.

Modül ve/veya tema indirmek için download kelimesinin kısaltılmışı olan dl

Modül ve/veya tema akfitleştirmek için için enable kelimesinin kısaltılmışı olan en

Modül ve/veya tema deaktifleştirmek için disable kelimesinin kısaltılmışı olan dis

Çekirdek, modül ve/veya tema güncellemek için update kelimesinin kısaltılmışı olan upgibi kısaltmaları kullanıyoruz.

Gelelim bu işlemleri nasıl yapacağımıza

Drush ile herhangi bir işlem yapmadan içinde bulunduğumuz dizinin doğru dizin olduğundan emin olmak için

drush status

komutunu kullanıyoruz ve sitemizin durumunu gösteren aşağıdaki gibi bir çıktı alıyoruz.

erdem@erdem-ubuntu:/var/www/learn$ sudo drush status

Drupal version : 7.28

Site URI : http://default

Database driver : mysql

Database username : root

Database name : learndblc

Database : Connected

Drupal bootstrap : Successful

Drupal user : Anonymous

Default theme : bartik

Administration theme : seven

PHP executable : /usr/bin/php

PHP configuration : /etc/php5/cli/php.ini

PHP OS : Linux

Drush version : 6.2.0

Drush configuration :

Drush alias files :

Drupal root : /var/www/learn

Site path : sites/default

File directory path : sites/default/files

Temporary file directory path : /tmp

Drush ile çekirdek, modül veya tema güncellemesi yapmak

drush up

komutu ile güncellemesi olan ne var ne yok her şeyi güncelleyebiliyoruz. Evet evet hepsi bu kadar :)

Sadece çekirdek güncellemesi için

drush up drupal

Çekirdek hariç diğer güncellemeleri yapmak için

drush up --no-core

Özellikle sadece bir modül veya temayı güncellemek için(mesela views ten bahsedelim biz)

drush up views

Son örnek ise benim başıma gelen bir olaydan yola çıkarak çok pratik olmasada birden çok modül varsa güncellenmesi gereken ve siz bir tanesini güncellemek istemiyorsanız aşağıdaki komutu kullanabilirsiniz(pcp modülünü güncellemek istemiyoruz mesela).

drush dis -y pcp && drush up -y && drush en -y pcp

komutu ile önce pcp modülünü devre dışı bırakıyoruz. Ardından güncellemeleri yapıyoruz. Sonrasında ise tekrar pcp modülünü aktifleştiriyoruz. Buradan da anlayacağımız gibi drush aktif olmayan modüllerin ya da temaların güncel olup olmadıklarını tarayamıyor ve aktif olmayan modülleri güncelleme dışında bırakıyor.

Burada ek olarak belirtmeliyim ki -y kısmı bize güncelleme, modül/tema aktifleştirme/deaktifleştirme işlemleri sırasında otomatik olarak "yes" cevabını verdiyor. Haliyle tek komutla güncelleme, aktifleştirme/deaktifleştirme işlemlerimizi yapmış oluyoruz.

Drush ile modül veya tema indirmek

drush dl proje_ismi

kalıbını kullanarak indirmek istediğimiz ne varsa indirebiliriz.

Burada proje_ismi dediğimiz kısım işlem yapmak istediğimiz modülün drupal.org sitesindeki projenin url kısmı. Nasıl mı?

Örneğin Administration Menu modülünü indirmek istiyoruz. Drupal.org'daki url si drupal.org/project/admin_menu şeklinde. Bizim proje ismi dediğimiz kısım burada drupal.org/project/ kısmından sonraki url nin devamıdır. Yani Administration Menu modülünü indirmek için

drush dl admin_menu

şeklinde kullanmamız lazım bu komutu.

Drush ın sağladığı kolaylıklardan biri ise tek komutla birden fazla modül/tema indirebilmek ve kurabilmektir.

drush dl admin_menu views ctools panels zen omega

gibi tek bir komut ile admin_menu, views, ctools, panels modülllerini ve zen, omega temalarını indirmiş oluyoruz.

Drush ile modül ve/veya tema aktifleştirmek/deaktirleştirmek

Aktifleştirmek için(views ve administration menu);

drush en -y views admin_menu

Deaktifleştirmek için;

drush dis -y views admin_menu

Drush ile yedek almak

drush archive-dump

komutu ile yedek aldığımızda aşağıdaki gibi bir çıktı vermeli.

root@erdem-ubuntu:/var/www/learn# drush archive-dump

Archive saved to [ok]

/root/drush-backups/archive-dump/20140613170333/learndblc.20140613_170334.tar.gz




Bu şekilde ftp ve veritabanı yedeğini tek komutla saniyeler içinde oluşturabiliyoruz.

Burada görüldüğü gibi /root/drush-backups/archive-dump dizini altına yedek dosyasını oluşturdu.

Eğer yedek dosyasını istediğimiz yere almak istiyorsak aşağıdaki komutu kullanmalıyız.

drush archive-dump default --destination=/istenilen/dizin/yolu/mysite.tar

Drush ile yedeği geri yüklemek

drush archive-restore ./mysite.tar.gz

komutunu kullanarak dosyalarımızı geri yükleyebiliriz.

Veri tabanı ile birlikte geri yükleme yapmak için

drush archive-restore ./example.tar.gz --db-url=mysql://root:pass@127.0.0.1/dbname

komutunu kullanmamız gerekiyor. Tabiki settings.php dosyasında gerekli değişiklikleri yaptıktan sonra.

Drush ile alt tema oluşturmak

Zen temasını indirelim ve alt temasını oluşturalım.

drush dl zen

komutu ile Zen taban temasını indiriyoruz.

Temayı indirdikten sonra bu adresteki adımları uygulayarak alt temamızı oluşturacağız. Her tema için alt tema oluşturma komutları farklı olduğundan proje sayfalarını incelemenizde fayda var.

root@erdem-ubuntu:/var/www/learn# drush en zen

The following extensions will be enabled: zen

Do you really want to continue? (y/n): n

Aborting. [cancel]

root@erdem-ubuntu:/var/www/learn# drush en -y zen

The following extensions will be enabled: zen

Do you really want to continue? (y/n): y

zen was enabled successfully. [ok]

root@erdem-ubuntu:/var/www/learn# drush cc all

'all' cache was cleared. [success]

root@erdem-ubuntu:/var/www/learn# drush zen "Zen Alt Tema" zenalttema

Starter kit for "Zen Alt Tema" created in: /var/www/learn/sites/all/themes/zenalttema




şeklinde Zen Alt Tema adlı alt temamızı oluşturmuş oluyoruz.

Drush ile temiz urlyi kapatmak

Bu makaleyi yazmayı düşündüğüm sıralarda Facebook DrupalTurkiye grubuna gelen bir soru oldu ve siteye giriş yapmadan temiz url nin nasıl kapatılacağını sordu bir arkadaşımız. O sorudan yola çıkarak grupta verdiğim cevabı buradada vereyim. Siteyi bir sunucudan bir diğerine taşıyınca bazı temiz url sorunları ile karşılaşılabiliyor ve siteye giriş yapabilmek için temiz url yi kapatmak gerekebiliyor.

drush vset clean_url 0 --yes

komutunu kullanarak drush ile temiz url yi siteye giriş yapmadan kapatabilir

drush vset clean_url 1 --yes

komutu ile açabiliriz.

Drush ile drupal çekirdeği indirmek

Son olarak bahsettiğim drupal kurulu olmayan bir dizine drupal çekirdeğini indirmek için ise

drush dl drupal

komutunu kullanıyoruz. Böylece bulunduğumuz dizine en güncel ve stabil drupal sürümünü klasör olarak indirmiş oluyoruz.

Şimdilik Drush hakkında söyleyeceklerim bu kadar.

İyi çalışmalar.

Drupal'de git Kullanarak Patch Nasıl Yapılır?

drupal git patch

Drupal'da git kullanarak patch uygulama

Drupal ile patch dosyalarının nasıl uygulanacağını git kullanarak anlatacağım.

Öncelikle uygulayacağımız .patch dosyasını terminal yardımıyla wget kullanarak drupal kurulu dizinimize indiriyoruz. İsterseniz kendiniz indirerek drupal dizinine ftp aracığıyla da gönderebilirsiniz.

wget [patch-ismi].patch

Patch dosyasını uygulamadan önce dosyayı herhangi bir metin editörüyle açıp düzenlenecek dosyalara bakıyoruz ve yedeklerini alıyoruz.

Daha sonra indirdiğimiz patch dosyasını uygulamak için

git apply [patch-ismi].patch

komutunu girerek yamayı uygulamış oluyoruz.

Hepsi bu kadar.

Not: Uygulayacağınız yamanın onaylanmış olmasına dikkat edin. Aksi takdirde istenmeyen durumlarla karşılaşabilirsiniz.

Drupal'de varsayılan CSS dosyalarını nasıl çıkarabilirim?

Drupal'de varsayılan CSS dosyalarını nasıl çıkarabilirim?

Drupal'de css optimize ederek performans arttirma yöntemi
Eğer sıfırdan bir tema oluşturuyorsak, çekirdekten gelen css dosyaları tüm standart css sınıflarının üzerine yazılır. Haliyle gereksiz bir sürü css sınıfına sahip oluruz ve bu sınıflar web sitemizin performansında negatif katkıda bulunur. Hiç gereği yokken sorgu sayımızı arttırmış oluruz.

Peki nasıl bu standart css sınıflarından kurtulabilirim?

Bunun bir kaç yolu vardır. Template.php dosyamızda "hook_css_alter" ile ve info dosyamızda ise "CSS FOAD" methodunu kullarak varsayılan css sınıflarını kaldırabiliriz.

1- ) Template.php dosyasında css sınıfılarını engellemek

Aşağıdaki kodu oluşturduğumuz temamızın içindeki "template.php" dosyamıza kopyalıyoruz. Sonrasında "MY_THEME_" kısmını temanızın adını yazıyoruz.

/*** Implements hook_css_alter(); */

function MY_THEME_css_alter(&$css) {

$remove = array(
'misc/vertical-tabs.css',
'misc/vertical-tabs-rtl.css',
'misc/ui/jquery.ui.core.css',
'misc/ui/jquery.ui.theme.css',
'modules/comment/comment.css',
'modules/comment/comment-rtl.css',
'modules/field/theme/field.css',
'modules/field/theme/field-rtl.css',
'modules/file/file.css',
'modules/filter/filter.css',
'modules/node/node.css',
'modules/search/search.css',
'modules/search/search-rtl.css',
'modules/system/system.admin.css',
'modules/system/system.admin-rtl.css',
'modules/system/system.base.css',
'modules/system/system.base-rtl.css',
'modules/system/system.maintenance.css',
'modules/system/system.menus.css',
'modules/system/system.menus-rtl.css',
'modules/system/system.messages.css',
'modules/system/system.messages-rtl.css',
'modules/system/system.theme.css',
'modules/system/system.theme-rtl.css',
'modules/user/user.css',
'modules/user/user-rtl.css',
'sites/all/modules/ctools/css/ctools.css',
);
foreach ($remove as $value) {
unset($css[$value]);
}
}

Ön belleği temizlemeyi unutmayın.

2- ) CSS FOAD methodunu kullarak varsayılan css sınıflarını kaldırmak

Temanızın info dosyasını açın

Görüntülenmesini istemediğiniz css sınıflarını kendinize göre coğaltarak kullabilirsiniz.
ÖRNEK;

;-------------- CSS FOAD -------------
stylesheets[all][] = system.messages.css
stylesheets[all][] = comment.css
stylesheets[all][] = node.css

Ön belleği temizlemeyi unutmayın.

Drupal'de her problem için birden fazla çözüm olduğunu unutmayın.

Mutlu kodlamalar

Drupal Temalarında Bootstrap ve Font Awesome Kütüphanelerinden Faydalanma

bootstrap ve font awesome

Drupal 7 temalarında Bootstrap ve Font Awesome kütüphanelerinden modül kullanmadan nasıl faydalanabileceiğinizi merak ediyorsanız bu makale tam size göre.

Bootstrap kütüphanesini temaya entegre etme

Bootstrap kütüphanesini bu linkten indiriyoruz. İndirdiğimiz .zip dosyasını açıyoruz ve dist klasörü içine giriyoruz.
Dist klasörü içerisinde karşımıza "css,fonts,js" klasörleri çıkıyor. Css klasörü içerisindeki bootstrap.min.css css dosyasını kullandığımız temamızın ana dizinindeki css klasörünün(../sites/all/themes/tema/css) içine atıyoruz.
Dist klasörü içerisinde karşımıza çıkan Js klasörü içerisindeki bootstrap.min.js script dosyasını temamızın ana dizinindeki js klasörünün(../sites/all/themes/tema/js) içine atıyoruz.
Dist klasörü içerisinde karşımıza çıkan Fonts klasörünü klasör olarak temamızın ana dizinine(../sites/all/themes/tema) atıyoruz.

Bu işlemlerden sonra tema dizinimize attığımız dosyaları temamızın görmesi için tema.info dosyasına gerekli satırları ekliyoruz.

Css dosyası için;
stylesheets[all][] = css/bootstrap.min.css
Js dosyası için;
scripts[] = js/bootstrap.min.js
satırlarını ekliyoruz.

Sitemizin önbelleğini temizliyoruz. Bu işlemlerden sonra bootstrap kütüphanesini sitenizde dilediğiniz gibi kullanabilirsiniz.

Font Awesome kütüphanesini temaya entegre etme

Font Awesome kütüphanesini bu linkten indiriyoruz. İndirdiğimiz .zip dosyasını açıyoruz ve karşımıza çıkan Css klasörü içerisindeki font-awesome.min.css dosyasını temamızın ana dizininde bulunan css klasörüne atıyoruz.
Kütüphane içerisinden çıkan Fonts klasörü içerisindeki dosyaların hepsini Bootstrap kütüphanesini entegre ederken kullandığımız temamızın ana dizininde oluşan Fonts klasörüne atıyoruz.

Bu dosyaları temamızın görmesi için tema.info dosyasını tekrar düzenliyoruz.

stylesheets[all][] = css/font-awesome.min.css satırını tema.info dosyasına ekliyoruz. Sitemizin önbelleğini temizliyoruz. Font Awesome da temamıza entegre olmuş durumda.

CDN ile Bootstrap ve Font Awesome kütüphanelerini kullanma

Aşağıdaki kodları html.tpl.php dosyanızdaki head tagları arasına ekleyiniz.

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.x.x/css/bootstrap.min.css">

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.x.x/js/bootstrap.min.js"></script>
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.x.x/css/font-awesome.min.css" rel="stylesheet">

Kodlarda aradaki "x" yerlerine en son sürüm numaralarını yazmanız gerekmektedir.

Bu sistemleri nasıl kullanacağınız sizin yaratıcılığınıza bağlı elbette.

İyi çalışmalar.

Drupal Temalarında Bootstrap ve Font Awesome Kütüphanelerinden Faydalanma

Bootstrap ve Font Awesome

Drupal 7 temalarında Bootstrap ve Font Awesome kütüphanelerinden modül kullanmadan nasıl faydalanabileceiğinizi merak ediyorsanız bu makale tam size göre.

Bootstrap kütüphanesini temaya entegre etme

Bootstrap kütüphanesini bu linkten indiriyoruz. İndirdiğimiz .zip dosyasını açıyoruz ve dist klasörü içine giriyoruz.
Dist klasörü içerisinde karşımıza "css,fonts,js" klasörleri çıkıyor. Css klasörü içerisindeki bootstrap.min.css css dosyasını kullandığımız temamızın ana dizinindeki css klasörünün(../sites/all/themes/tema/css) içine atıyoruz.
Dist klasörü içerisinde karşımıza çıkan Js klasörü içerisindeki bootstrap.min.js script dosyasını temamızın ana dizinindeki js klasörünün(../sites/all/themes/tema/js) içine atıyoruz.
Dist klasörü içerisinde karşımıza çıkan Fonts klasörünü klasör olarak temamızın ana dizinine(../sites/all/themes/tema) atıyoruz.

Bu işlemlerden sonra tema dizinimize attığımız dosyaları temamızın görmesi için tema.info dosyasına gerekli satırları ekliyoruz.

Css dosyası için;
stylesheets[all][] = css/bootstrap.min.css
Js dosyası için;
scripts[] = js/bootstrap.min.js
satırlarını ekliyoruz.

Sitemizin önbelleğini temizliyoruz. Bu işlemlerden sonra bootstrap kütüphanesini sitenizde dilediğiniz gibi kullanabilirsiniz.

Font Awesome kütüphanesini temaya entegre etme

Font Awesome kütüphanesini bu linkten indiriyoruz. İndirdiğimiz .zip dosyasını açıyoruz ve karşımıza çıkan Css klasörü içerisindeki font-awesome.min.css dosyasını temamızın ana dizininde bulunan css klasörüne atıyoruz.
Kütüphane içerisinden çıkan Fonts klasörü içerisindeki dosyaların hepsini Bootstrap kütüphanesini entegre ederken kullandığımız temamızın ana dizininde oluşan Fonts klasörüne atıyoruz.

Bu dosyaları temamızın görmesi için tema.info dosyasını tekrar düzenliyoruz.

stylesheets[all][] = css/font-awesome.min.css satırını tema.info dosyasına ekliyoruz. Sitemizin önbelleğini temizliyoruz. Font Awesome da temamıza entegre olmuş durumda.

CDN ile Bootstrap ve Font Awesome kütüphanelerini kullanma

Aşağıdaki kodları html.tpl.php dosyanızdaki head tagları arasına ekleyiniz.

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.x.x/css/bootstrap.min.css">

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.x.x/js/bootstrap.min.js"></script>
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.x.x/css/font-awesome.min.css" rel="stylesheet">

Kodlarda aradaki "x" yerlerine en son sürüm numaralarını yazmanız gerekmektedir.

Bu sistemleri nasıl kullanacağınız sizin yaratıcılığınıza bağlı elbette.

İyi çalışmalar.

Phpmyadmin ile Büyük Mysql Dosyaları İçeri Aktarma

Phpmyadmin ile Büyük Mysql Dosyaları İçeri Aktarma

Boyutu yüksek sql dosyalarımı phpmyadmin arayüzünden nasıl içeri aktarabilirim?

Phpmyadmin arayüzünde normalde import edebiliceğimiz dosya boyutu, php.ini dosyasına herhangi bir müdahalede bulunmaz isek 2MB civarındar. Hali hazırda bir sql dosyalarımız için oldukça küçük bi boyuttur. Şimdi size phpmyadmin arayüzünden çok kolay bir sekilde sql import etmenin basit bir yolunu önericeğim.

"SFTP yada SSH kullanarak"

1. Önce phpmyadmin klasöründeki config.inc.php dosyasını bir editör yardımıyla açalım ve düzenleyelim.

nano /etc/phpmyadmin/config.inc.php

2. Daha sonra "config.inc.php" dosyası içerisindeki "$cfg['UploadDir']" satırını bulup. Aşağıdaki kod ile değiştirelim.

$cfg['UploadDir'] = '/etc/phpmyadmin/upload';

3. Phpmyadmin klasörünün içerisinde "upload" adında bir klasör oluşturalım.

mkdir /etc/phpmyadmin/upload

4. Yüklemek istediğiniz SQL dosyasını "upload" klasörün içerine kopyalayalım.

5. Phpmyadmin'e giriş yaparak import sayfasını açalım. Sayfada “web sunucusu gönderme dizini” başlığı altında bir kutu görüntülenecektir. Yüklemek istediğiniz sql dosyasını seçip, içeri aktaralım.

Php.ini dosyasını düzenlememize ve değerleri yükseltmemize gerek kalmadan yada 3. partı yazılımlar kurmadan sql verilerinizi içeri rahatlıkla aktarabilirsiniz. Yüklenmek istenen dosyanın boyutu ne kadar büyük olursa olsun. Sorunsuzca sql dosyasını içeri aktarmanın en basit bir kaç yolundan biridir.

Mutlu kodlamalar.

Ubuntu'da LEMP (Nginx, MySQL, PHP) Server ve phpMyAdmin Kurulumu

lemp

Ubuntu'da LEMP Server ve phpMyAdmin Kurulumu

LEMP Kurulumu

LEMP Hakkında

LEMP web sunucularını çalıştırmaya yarar ve açık kaynak yazılım gruplarından oluşmaktadır. LEMP kısaltması; Linux, Nginx(Engine X), MySQL ve PHP yazılımlarının baş harflerinden oluşmaktadır. Kurulumda ek olarak phpMyAdmin kurulumunu da anlatacağım.
Anlatım Ubuntu 12.04 içindir.

Kurulum

Kurulum sırasında "root" yetkisi gereklidir.

1. Adım: Depoların güncel olduğundan emin olun.

sudo apt-get update

2. Adım: MySQL Kurulumu:
MySQL veri düzenlemek ve almak için kullanılan güçlü bir veritabanı yönetim sistemidir.

MySQL yüklemek için terminali açın ve aşağıdaki kodu girin.

sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql

Yükleme sırasında MySQL root şifresini ayarlamak isteyecektir. Program yükleme sırasında şifre koyma şansını kaçırırsanız, daha sonra MySQL kabuğu içinden şifre koyabilirsiniz.

MySQL yükledikten sonra, bu komut ile aktif hale getirmelisiniz:

sudo mysql_install_db

MySQL kurulumunu aşağıdaki komutu girerek bitiriyoruz.

sudo /usr/bin/mysql_secure_installation

girişi sizin root şifrenizi soracaktır. Giriyoruz. Root şifresini değiştirmek istemiyorsak N giriyoruz ve devam ediyoruz.

By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to
 have a user account created for them.  This is intended only for testing, and to make the installation go a 
bit smoother. You should remove them before moving into a production environment.
Remove anonymous users? [Y/n] y                                            
 ... Success!
Normally, root should only be allowed to connect from 'localhost'.  This ensures that someone cannot guess 
at the root password from the network.
Disallow root login remotely? [Y/n] y
... Success!
By default, MySQL comes with a database named 'test' that anyone can access.  This is also intended only for 
testing, and should be removed before moving into a production environment.
Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? [Y/n] y
 ... Success!
Cleaning up...

3. Adım: Nginx Kurulumu

MySQL kurulumdan sonra Nginx kurulumunu aşağıdaki işlemleri takip ederek gerçekleştiriyoruz.

sudo apt-get install nginx

kurulumdan sonra nginx servisini başlatmak için

sudo service nginx start

komutunu giriyoruz.

VPS IP adresini görmek istiyorsanız aşağıdaki kodu girebilirsiniz.

ifconfig eth0 | grep inet | awk '{ print $2 }'

4. Adım: PHP Kurulumu

Sıra geldi PHP kurulumunu gerçekleştirmeye. Terminali açıyoruz ve aşağıdaki işlemleri uyguluyoruz.

sudo apt-get install php5-fpm

5. Adım: PHP Yapılandırması

Küçük değişiklikler ile php yapılandırmasına ihtiyacımız var. Bu yüzden php.ini dosyasını açıyoruz.

sudo nano /etc/php5/fpm/php.ini

Açılan ekranda cgi.fix_pathinfo=1 satırını buluyoruz ve aşağıdaki gibi değişikliği yaptıktan sonra kaydediyoruz ve ekranı kapatıyoruz.

cgi.fix_pathinfo=0

Php5-fpm dosyasında da ufak değişiklikler yapmamız gerekiyor. Dosyamızı açıyoruz.

sudo nano /etc/php5/fpm/pool.d/www.conf

Açılan ekranda listen = 127.0.0.1:9000 satırını buluyoruz ve 127.0.0.1:9000 kısmını /var/run/php5-fpm.sock ile aşağıdaki gibi değişikliği yaptıktan sonra kaydediyoruz ve ekranı kapatıyoruz.

listen = /var/run/php5-fpm.sock

Php5-fpm yi tekrar başlatıyoruz.

sudo service php5-fpm restart

6. Adım: Nginx Yapılandırması

Virtual host dosyasını açıyoruz.

sudo nano /etc/nginx/sites-available/default

[...]
server {
        listen   80;
        root /usr/share/nginx/www;
        index index.php index.html index.htm;
        server_name example.com;
        location / {
                try_files $uri $uri/ /index.html;
        }
        error_page 404 /404.html;
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/www;
        }
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        location ~ \.php$ {
                #fastcgi_pass 127.0.0.1:9000;
                # With php5-fpm:
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;       
        }
}
[...]

Yaptığımız değişiklikler:
- index satırına index.php ekledik.
- server name satırına localhost yerine alan adınızı(example.com gibi) veya IP adresinizi yazın.
- “location ~ \.php$ {“ bölününde değişiklikler yaptıktan sonra kaydediyoruz ve pencereyi kapatıyoruz.

7. Adım: php.info dosyası oluşturmak

sudo nano /usr/share/nginx/www/info.php

içine

<?php phpinfo(); ?>

satırını ekiyoruz ve kaydediyoruz.

Nginx i tekrar başlatıyoruz.

sudo service nginx restart

Nginx ve Php5-fpm yapılandırmasını http://ipadresiniz/info.php ziyaret ederek görebilirsiniz.

phpMyAdmin Kurulumu

phpMyAdmin Hakkında

phpMyAdmin MySQL ile çalışabilen ve arayüzden verilerinizi kontrol ve müdehale etmenizi sağlayan ücretsiz bir yazılımdır.

1. Adım: phpMyAdmin Kurulumu

Kuruluma başlamak için terminale aşağıdaki kodu giriyoruz.

sudo apt-get install phpmyadmin

Parolanızı girerek kuruluma devam ediyoruz.

Kurulum sırasında sunucumuzu(apache veya lighttpd'den birini) seçmemizi istiyor. Nginx kurduğumuz için burada bir seçim yapmadan kuruluma devam ediyoruz.

2. Adım: phpMyAdmin Yapılandırması

phpMyAdmin'e erişim için yapmamız gereken bir işlem kaldı. Sitemiz ile phpMyAdmin arasında bir bağlantı oluşturacağız. Bunun için aşağıdaki kodu giriyoruz.

sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/www

Nginx i tekrar başlatıyoruz.

sudo service nginx restart

LEMP Server ve phpMyAdmin kurulumunu tamamlamış bulunuyoruz.

Abone ol Nasıl Yapılır