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
