Apache ve PHP’nin versiyon bilgilerini gizleme
Apache ve PHP’nin versiyon bilgilerini headerdan gizleme ihtiyacı duydum. Dursun diye buraya da koyayım bari.
Apache’nin versiyon bilgilerini saklamak için :
/etc/httpd/conf/httpd.conf dosyasında ( ya da sizin conf dosyasınız nerede ise ) aşağıdaki parametreleri ayarlayın.
ServerSignature Off ServerTokens ProductOnly
Siz aşağıdaki tablodan yararlanıp isterseniz başka değer verebilirsiniz.
ServerToken | Görüntülenecek Bilgi |
ProductOnly | Server: Apache |
Major | Server: Apache/2 |
Minor | Server: Apache/2.0 |
Minimal | Server: Apache/2.0.55 |
OS | Server: Apache/2.0.55 (Redhat) |
Full(veya boş) | Server: Apache/2.0.64 (Unix) mod_ssl/2.0.64 OpenSSL/0.9.8e-fips-rhel5 |
Parametreleri ayarlamadan önce :
root@localhost:~# curl -I http://www.kursaddara.com HTTP/1.1 200 OK Date: Mon, 16 Apr 2012 06:45:50 GMT Server: Apache/2.0.64 (Unix) mod_ssl/2.0.64 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 X-Powered-By: PHP/5.2.9 Connection: close Content-Type: text/html
Parametreleri ayarladıktan sonra :
root@localhost:~# curl -I http://www.kursaddara.com HTTP/1.1 200 OK Date: Mon, 16 Apr 2012 06:47:56 GMT Server: Apache X-Powered-By: PHP/5.2.9 Connection: close Content-Type: text/html
Gördüğünüz gibi Apache bilgileri gizlendi.
Şimdi PHP versiyon bilgilerini gizleyelim.
/etc/php.ini dosyasında ( sizin config dosyanız nerede ise ) aşağıdaki parametreleri ayarlayın.
expose_php Off
Parametreleri ayarladıktan sonra :
root@localhost:~# curl -I http://www.kursaddara.com HTTP/1.1 200 OK Date: Mon, 16 Apr 2012 06:48:47 GMT Server: Apache Connection: close Content-Type: text/html
Gördüğünüz gibi PHP versiyon bilgisi gitti.
Bu parametreleri değiştirdikten sonra apache’yi restart etmeniz gerekmektedir.
Posted in Apache, Linux, PHP on April 16th, 2012 by Kürşad DARA | | 0 Comments
Facebook uygulamanızı kullanan kullanıcıların duvarına otomatik veri yollama
Facebook uygulamalarınızı kullanan kullanıcıların duvarlarına otomatik veri yollamak için aşağıdaki kod bloğunu kullanabilirsiniz.
$attachment = array('message' => 'mesajınız', 'name' => 'Uygulama adı', 'caption' => "Uygulama adı", 'link' => 'Uygulama linki', 'description' => 'İçerik', 'picture' => 'resim tam linki' ); $result = $facebook->api('/me/feed/', 'post', $attachment);
Not : İlgili javascriptleri ve api kodlarını da sayfanıza include etmiş olmanız gerekmektedir.
Posted in PHP, Web Development on June 14th, 2011 by Kürşad DARA | | 0 Comments
Yazdığınız PHP programlarının güvenliği için bir checklist
İncelenmesi gereken güzel bir checklist.
Güvenli mi yazdığınız programlar ?
Checklist için tıklayınız.
Posted in PHP, Web Development on May 12th, 2011 by Kürşad DARA | | 0 Comments
Facebook sayfalarda kullanıcının beğenip beğenmediğini tespit etme.
Kodunuzun en başında aşağıdaki kodu kullanırsanız kullanıcının sayfayı beğenip beğenmediğini anlayabilirsiniz.
function parsePageSignedRequest() { if (isset($_REQUEST['signed_request'])) { $encoded_sig = null; $payload = null; list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2); $sig = base64_decode(strtr($encoded_sig, '-_', '+/')); $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true)); return $data; } return false; } if($signed_request = parsePageSignedRequest()) { if($signed_request->page->liked) { echo "Sayfayı beğendiğiniz için teşekkürler"; } else { echo "Önce sayfayı beğenmeniz gerekmektedir."; echo("< s c r i p t > top.location.href='http://www.facebook.com/pages/blabla/198687143423423'< / s c r i p t >"); } }
Posted in PHP, Web Development on May 11th, 2011 by Kürşad DARA | | 0 Comments
Bağlantı cihazına göre web sitesine otomatik yönlendirme.
Web sitenizin pc ve mobile versiyonunu yaptıysanız ve otomatik yönlendirme yapmak isterseniz aşağıdaki kodu kullanabilirsiniz.
< ?php $mobile_browser = '0'; if(preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone)/i', strtolower($_SERVER['HTTP_USER_AGENT']))){ $mobile_browser++; } if((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml')>0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))){ $mobile_browser++; } $mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4)); $mobile_agents = array( 'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac', 'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno', 'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-', 'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-', 'newt','noki','oper','palm','pana','pant','phil','play','port','prox', 'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar', 'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-', 'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp', 'wapr','webc','winw','winw','xda','xda-'); if(in_array($mobile_ua,$mobile_agents)){ $mobile_browser++; } if (strpos(strtolower($_SERVER['ALL_HTTP']),'OperaMini')>0) { $mobile_browser++; } if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'windows')>0) { $mobile_browser=0; } if($mobile_browser>0){ header('Location: http://siteniz/mobile_versiyonu'); } // else { // header('Location: http://siteniz/pc_versiyonu'); // } ?>
Posted in PHP, Web Development on April 26th, 2011 by Kürşad DARA | | 0 Comments
Php Curl ile bir sayfadan resim kaydetmek.
< ?php $url = "http://www.bilgiakademisi.net/images/s/logo.jpg"; $agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.0.9) "; $agent .= "Gecko/20061206 Firefox/1.5.0.9'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, $agent); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); $httpfile = curl_multi_getcontent ($ch); file_put_contents("/tmp/tmp.jpg",$httpfile); ?>
Posted in Linux, PHP on January 26th, 2009 by Kürşad DARA | | 0 Comments