Merhabalar arkadaşlar. Biliyoruz ki SMF ne kadar güzel olsada hep SMF sunucuya uyum sağlayacak diye bir şey yok. Biraz sunucu uymalı değil mi..?
Geçen günlerde yeni bir site açtım. Ancak bir sorun oldu!
WWW.SİTEM.ORG olarak girdiğimde sorun olmuyor. Ancak
SİTEM.ORG olarak gitdiğimde Kaynak Görüntülenemiyor (406) Hatası alıyordum. Canım hostcuma sordum. Dedi ki mod_security'de sorun. Eee. Kapat o zaman dedim :) . Olmaz dedi. Kapatırsam; shell scriptler çalışır, sonra da siteler dayak yer dedi. Hıımm. dedim. O da dediki izin verirsen .htaccess ile bir düzenleme yapabilirim dedi. İzin senindir dedim ;) ... Yaptı bir şeyler. Düzeldi. Sizlerlede paylaşayım istedim.
Sorun neden kaynaklanıyor?Sorun mod_security'nin açık olmasından kaynaklanıyor.
Neden ama?Nedeni bazı PHP scriptlerinin session yöntemiyle oturumları yönettiği için tarayıcıda SİTEM.ORG/index.php?PHPSESSID=3ff60c036159aa1a7007303c28c86bbc;wwwRedirect gibi ifadeler göstermesidir. Kısacası bu gereksiz SESSİONlar mod_security'e takılıp kalıyor. Bu nedenle siteyi görüntülemiyor..
Anladık, sorunu. Peki ne yapmak gerek?Bunun bir çok çözümü var. Ben bulabildildiğim 3 çözümü yazacağım size.
- .htaccess Çözümü I. İlk olarak hostcumun çözümünü yazıyorum. Bu kodları .htaccess dosyanıza ekleyin. Ve düzenlemeyi unutmayın!
RewriteCond %{HTTP_HOST} !^www\.hileci\.org
RewriteRule (.*) http://www.hileci.org/$1 [R=301,L]
- .htaccess Çözümü II. - Yakuter ve [Unknown] tavsiyesi.. (Bknz: Yakuter (http://www.yakuter.com/aradiginiz-kaynak-goruntulenemiyor-406-hatasi/), [Unknown] (http://www.simplemachines.org/community/index.php?topic=34270.0))
<IfModule mod_security.c>
# Turn off mod_security filtering. SMF is a big boy, it doesn't need its hands held.
SecFilterEngine Off
# The below probably isn't needed, but better safe than sorry.
SecFilterScanPOST Off
</IfModule>
- .htaccess Çözümü III. - DMRY tavsiyesi.. (Bknz: DMRY (http://www.dmry.net/phpsessid-kaldirmak))
php_value session.use_trans_sid 0
php_value session.use_only_cookies 1
İşte bu şekilde, bu zorluğunda üstesinden geliyoruz.
Not olarak; bu yazı bana aittir. Yazıyı benim adımı geçirmeden biri kopyalarsa ya I. mahkemesinde ya da öbür tarafta görüşürüz=)
Ve son olarak hepinizi seviyorum.
her zaman mod_security'den olmaz o sorun. Panel plesk ise "www" bileşenine izin verilmiştir diğerine verilmemiştir veya unutulmuştur. (En azından 7.6 sürümünde öyleydi.) Bir başka etken ise httpd.conf dosyasındandır. O dosyadaki satır kodunu hatırlayamıyorum şuan kusra bakma :)
Quote from: Brkn* on July 27, 2009, 07:34:24 AM
her zaman mod_security'den olmaz o sorun. Panel plesk ise "www" bileşenine izin verilmiştir diğerine verilmemiştir veya unutulmuştur. (En azından 7.6 sürümünde öyleydi.) Bir başka etken ise httpd.conf dosyasındandır. O dosyadaki satır kodunu hatırlayamıyorum şuan kusra bakma :)
httpd.conf bir sitede daha görmüştüm ama yazmadım onu. Pek güvenilir gelmedi :Ç Hem de onu değiştirmek için SSH girişi gerekmez mi? Yani root olmak gerek mez mi, serverde?
Quote from: grafitus on July 27, 2009, 08:30:58 AM
Quote from: Brkn* on July 27, 2009, 07:34:24 AM
her zaman mod_security'den olmaz o sorun. Panel plesk ise "www" bileşenine izin verilmiştir diğerine verilmemiştir veya unutulmuştur. (En azından 7.6 sürümünde öyleydi.) Bir başka etken ise httpd.conf dosyasındandır. O dosyadaki satır kodunu hatırlayamıyorum şuan kusra bakma :)
httpd.conf bir sitede daha görmüştüm ama yazmadım onu. Pek güvenilir gelmedi :Ç Hem de onu değiştirmek için SSH girişi gerekmez mi? Yani root olmak gerek mez mi, serverde?
Root olmak gerekir. httpd.conf apache http sunucusu ayar dosyasıdır. Neden güvenli gelmedi ? Ne güvensizliğini gördün de bu yorumu yaptın ? :)
Ayarı httpd.conf dosyasından yaparsan sunucuda bulunan her site etkilenir. Bkz. httpd.conf dosyası sunucunun ayar dosyasıdır.
Quote from: Brkn* on July 29, 2009, 03:07:52 AM
Quote from: grafitus on July 27, 2009, 08:30:58 AM
Quote from: Brkn* on July 27, 2009, 07:34:24 AM
her zaman mod_security'den olmaz o sorun. Panel plesk ise "www" bileşenine izin verilmiştir diğerine verilmemiştir veya unutulmuştur. (En azından 7.6 sürümünde öyleydi.) Bir başka etken ise httpd.conf dosyasındandır. O dosyadaki satır kodunu hatırlayamıyorum şuan kusra bakma :)
httpd.conf bir sitede daha görmüştüm ama yazmadım onu. Pek güvenilir gelmedi :Ç Hem de onu değiştirmek için SSH girişi gerekmez mi? Yani root olmak gerek mez mi, serverde?
Root olmak gerekir. httpd.conf apache http sunucusu ayar dosyasıdır. Neden güvenli gelmedi ? Ne güvensizliğini gördün de bu yorumu yaptın ? :)
Ayarı httpd.conf dosyasından yaparsan sunucuda bulunan her site etkilenir. Bkz. httpd.conf dosyası sunucunun ayar dosyasıdır.
Gördüğüm site güvenli gelmedi=). Bir de dediğin gibi tüm siteleri etkiliyor ve root girişi gerekiyor. Burda da root olan tanıdığım 1 kişi var :).
dostum üç seçeneğide denedim ama nafile yapamadım :S ama tek tek yaptım yani önce ilk seçeneği denedim olmadı sildim diğerini denedim olmadı sildim sonra en son seçeneği denedim oda olmadı :S
kodlarımı yanlış yere koydum acaba en ortada bi satır açtım oraya ekledim bi düzenlesende tekrar denesem sana zahmet..
RewriteEngine on
#Some apache servers need Rewritebase.
#delete # from start of Rewrite base to enable it.
#If your forum is something like http://www.forum-example.com/forum then modify your
#RewriteBase in this way: RewriteBase /forum
RewriteBase /
#Archive/Sitemaps
RewriteRule ^sitemaps-([a-zA-Z0-9-]*)\.html index.php?dummy=1&action=seo4smfsitemaps&sa=$1 [L]
#uncomment if you use beautifying url actions
#RewriteCond %{REQUEST_METHOD} =GET
#RewriteCond %{QUERY_STRING} ^action=(.*)$
#RewriteRule ^(.*)$ seo4smf-redirect.php?a=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^topic=([0-9]*)$
RewriteRule ^(.*)$ seo4smf-redirect.php?t=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^topic=([0-9]*).([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?t=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^board=([0-9]*).([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?b=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^action=profile;u=([0-9]*);(.*)$
RewriteRule ^(.*)$ seo4smf-redirect.php?u=%1;param=%2 [R=301,L]
RewriteCond %{QUERY_STRING} ^action=profile;u=([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?u=%1 [R=301,L]
#Tiny Portal Old Url's
RewriteCond %{QUERY_STRING} ^page=([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?p=%1 [R=301,L]
#Rewrite Old urls
RewriteRule ^index.php/board,(.*).html seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^index.php/board,(.*).html;(.*) seo4smf-redirect.php?b=$1&o=$2 [R=301,L]
RewriteRule ^index.php/topic,(.*).html seo4smf-redirect.php?t=$1 [R=301,L]
RewriteRule ^index.php/topic,(.*).html;(.*) seo4smf-redirect.php?t=$1&o=$2 [R=301,L]
#Bad Url's
#RewriteCond %{REQUEST_URI} ^(.*)\.html$
#RewriteCond %{REQUEST_URI} !^(.+)/(.*)-t([0-9]*)\.([0-9]*).html$
#RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html seo4smf-redirect.php?t=$2 [R=301,L]
RewriteRule ^(.*)/-t(.*).html seo4smf-redirect.php?t=$2 [R=301,L]
RewriteRule ^-b(.*)/$ seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^-b(.*)/(.*)$ seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^(.*)/-b(.*)/$ seo4smf-redirect.php?b=$2 [R=301,L]
#New board URL's
RewriteRule ^(.*)-b([0-9]*)\.([0-9]*)/;(.*) index.php?dummy=1&board=$2.$3&$4 [L]
RewriteRule ^(.*)-b([0-9]*)\.([0-9]*)/$ index.php?dummy=2&board=$2.$3 [L]
RewriteRule ^(.*)-b([0-9]*)\.([0-9])$ index.php?dummy=2&board=$2.$3 [L]
#New topic URL's
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;((\?:from|msg|new)[0-9]*);(.*)$ index.php?dummy=1&topic=$2.$4&$6 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;((\?:from|msg|new)[0-9]*) index.php?dummy=1&topic=$2.$4 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;(.*)$ index.php?dummy=1&topic=$2.$3&$4 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html$ index.php?dummy=1&topic=$2.$3 [L]
#New profiles URL's
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*);start,([0-9]*);delete,([0-9]*);sesc,([a-z0-9]*)$ index.php?dummy=1&action=profile;u=$2;sa=$3;start=$4;delete=$5;sesc=$6 [L]
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*);start,([0-9]*)$ index.php?dummy=1&action=profile;u=$2;sa=$3;start=$4 [L]
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*)$ index.php?dummy=1&action=profile;u=$2;sa=$3 [L]
RewriteRule ^(.*)-u([0-9]*)\.html index.php?dummy=1&action=profile;u=$2 [L]
#New Tinyportal Articles URL's
RewriteRule ^(.*)-p([0-9]*)\.html index.php?dummy=1&page=$2 [L]
#New action Url's - uncomment if you use beautifying url actions
#RewriteRule ^(.*)\.html(.*)$ index.php?dummy=1;action=$1;$2 [L]
#RewriteRule ^(.*)\.html$ index.php?dummy=1;action=$1 [L]
#Sitemaps
RewriteRule sitemap.xml sitemaps.php [L]
RewriteRule urllist.txt urllist.php [L]
Arkadaşlar lütfen bilen birileri varsa yardımcı olsunlar..
RewriteBase / kodundan sonra ekleyin verilen ilk kodları.
Quote from: husmen73 (Gulhin) on August 26, 2009, 10:15:30 AM
RewriteBase / kodundan sonra ekleyin verilen ilk kodları.
dostum konuya yazdığımda girmiyordu yaptım olmamıştı daha sonra yine eski yedeğini attım olmadığı için.. dünde tekrar bakim bi kendi kendine düzelmiştir belki dedim giriyorum
örnek: benimsitem.com yazdığımda http://www.benimsitem.com/index.php?PHPSESSID=084ae905b20d225f752943aa635f947e;www
böyle bir sayfa açılıyor site açılıyor fakat böyle oluor şimdi senin söylediğin kodları ekledim RewriteBase / kodundan sonra ekledim yine aynı
http://www.benimsitem.com/index.php?PHPSESSID=084ae905b20d225f752943aa635f947e;www
diye açılıyor benimsitem.com yazdığımda :S
Sonda ki PHPSESSID'den mi şikayetçisiniz, durumu anlamadım.
Quote from: husmen73 (Gulhin) on August 26, 2009, 12:02:00 PM
Sonda ki PHPSESSID'den mi şikayetçisiniz, durumu anlamadım.
dostum evvelden hiç girmiyordu şu anda giriyor ama normal de girdiğimde benimsitem.com olarak yazıp www.benimsitem.com olarak giriş yapması gerekmiyormu o diğer linkler ney onu anlamadım..
PHPSESSID herkeste olan bir şey fazla takma.
Quote from: Gurbet_1907 on August 26, 2009, 12:10:33 PM
PHPSESSID herkeste olan bir şey fazla takma.
yok dostum bi kaç sitede denedim normal olarak yazınca siteyi normal olarak giriyor mesela alın deneyin sizde yazın simplemachines.org diye bide restorasyonforum.com olarak yazın görürsünüz..
Tamam yazdım dedigin gibi çıkan sonuç : http://www.restorasyonforum.com/index.php?www
Quote from: Restorasyon on August 26, 2009, 12:09:59 PM
Quote from: husmen73 (Gulhin) on August 26, 2009, 12:02:00 PM
Sonda ki PHPSESSID'den mi şikayetçisiniz, durumu anlamadım.
dostum evvelden hiç girmiyordu şu anda giriyor ama normal de girdiğimde benimsitem.com olarak yazıp www.benimsitem.com olarak giriş yapması gerekmiyormu o diğer linkler ney onu anlamadım..
PHPSESSID, benzersiz oturum bilgisidir. Bazen bu $Session ile bazende sizdeki gibi linkte taşınır.
www ise bazı sistemlerin/tarayıcıların yönlenme problemini gidermek için eklenmiş bir uzantıdır.
Buna takmayın kafanızı. Bir problem yok yani.
Ayrıca simplemachines.org olarak değil, simplemachines.org/community/index.php olarak denerseniz göreceksiniz.
hmm tmm arkadaşlar üstadlar sizlersiniz siz sorun yok diosanız sorun yoktur.. çok tşkler