Wordpress’te Permalink Sorunu

Thursday November 22nd 2007, 15:52 pm |   |  Web Teknolojileri | by eser s.

Sorun şu: Wordpress kurdunuz. Permalinks ayarlarını yapıyorsunuz. İstiyorsunuz ki yazılara tıklandığında URL’deki adres http://defter.sahillioglu.net/?p=206 değil de http://defter.sahillioglu.net/archives/wordpresste-permalink-sorunu-206/ şeklinde okunabilir ve anlaşılabilir (Friendly URLs) bir URL adres formatına sahip olsun. Ayarları yapıyorsunuz. Ancak linke tıkladığınızda 404 hatası alıyorsunuz ve yazınızı göstermiyor blogunuz.

Kontrollere başlarsınız: Apache mod-rewrite çalışıyor. Wordpress .htaccess dosyasına gerekli kodları eklemiş. Eeeo, bir sorun görünmüyor. Ama biraz araştırınca farkediyorsunuz ki $is_apache adlı bir değişken var ve permalink yapısını değiştirmek için bunun true olarak set edilmesi gerekiyor. Oysa sizin kurulumunuzda bu false set ediliyor.

Sunucunuzda print_r($_SERVER); ile PHP’nin sunucu değişkenlerini ekrana bastırdığınızda görüyorsunuz ki web sunucunuz Apache olmasına rağmen [SERVER_SOFTWARE] => WebServerX olarak ayarlanmış. Biraz araştırınca da bunun güvenlik amaçlı bir uygulama olduğunu öğreniyorsunuz.

Çözümse son derece basit:
/wp-includes/vars.php dosyasında en sonlarda bulunan //$is_apache = ((strpos($_SERVER['SERVER_SOFTWARE'], ‘Apache’) !== false) || (strpos($_SERVER['SERVER_SOFTWARE'], ‘LiteSpeed’) !== false)) ? true : false; satırını // ile comment’leyip yerine $is_apache = true; satırını ekliyorsunuz ve permalink’leriniz çalışmaya başlıyor. :)


Comments
3 Comments   |    |  Comments RSS on this post.  |  
  • Bu arada permalinklerden bahsetmişken, Wordpress 2.3 serisiyle birlikte permalink canonicalization\’a geçti. Bunun sayesinde diyelim ki sen permalink yapını değiştirdin. Eski linklerden gelen sorgular 404 hatası almadan önce bu yapıdan geçip yeni linklere yönlendiriliyor. Ayrıca bu arada adresler (URL) canonical hale getiriliyor. Misal, http://www.defter.sahillioglu.net/?p=100 -> defter.sahillioglu.net/?p=100 oluyor vs.vs. Bu sayede arama motorları bin bir çeşit farklı linki farklı sayfaymış gibi algılamıyor ve pagerank’e bir nebze fayda sağlıyor.

    Daha detaylı bilgi burada var:
    http://markjaquith.wordpress.com/2007/09/25/wordpress-23-canonical-urls/

    .... Comment by serkan • January 3, 2008 @ 15:17 pm
  • Benim diğer sitede de böyle bir sorun var. Şimdi deneyeceğim. İnşaallah olur…

    .... Comment by islami • June 30, 2008 @ 13:23 pm
  • Allah razı olsun kardes yaptım ve oldu :))

    .... Comment by eray • September 23, 2012 @ 00:38 am
  • Sorry, the comment form is closed at this time.

     
    SHATO Web Hosting Services