İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

htaccess problem

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ kat.php?id=$1

Böyle birşey yaptık.
http://domain/araba
http://domain/ev
güzel çalışıyor.

Ama bunun altına
RewriteRule ^detay/(.*)$ detay.php?id=$1
yazınca

http://domain/detay/ferrari
bunu yemiyor, kat.php'yi acip ID=detay/ferrari yaziyor.

Detay'ı üste taşıdım farketmedi. Hatta gene kat.php'yi açtırdı bu sefer path probleminden CSS'yi kırdı. <base href> ile css i düzeltsem bile detay.php'ye rewrite yapmıyor yani.
 

GNeRaL

0
İyinet Üyesi
Katılım
24 Şubat 2005
Mesajlar
2,869
Reaction score
16
Konum
Samsun
Hiçbir bilgim yok denebilir ama RewriteBase ile bir alakası olabilir mi?
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Benim de yok pek, RewriteBase diye bir direktif olduğunu da bilmiyordum. Onunla oynayınca 500 Server Error verdi. :)
 

GNeRaL

0
İyinet Üyesi
Katılım
24 Şubat 2005
Mesajlar
2,869
Reaction score
16
Konum
Samsun
Rewrite base sanırım sadece bir yere odaklandırttırıyor rule'leri,

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ kat.php?id=$1

gibi?
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Evet o kısımda zaten problem yok.

Mesele * diye joker varken xxxx/* 'ı yememesi, ilk jokere atama yapması. xxxx diye bir dizin mevcut değil çünkü. O kuraldan önce rewritebase'i de xxxx yapmak bir işe yaramadı dediğim gibi. İlginç.
 

sempaty

1
İyinet Üyesi
Katılım
25 Şubat 2005
Mesajlar
3,824
Reaction score
19
Konum
hawaii. ama sanal tur.
Kod:
RewriteEngine on 
 
RewriteCond %{REQUEST_URI} !^/detay/.*
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ kat.php?id=$1
 
RewriteRule ^detay/(.*)$ detay.php?id=$1

bunu deneyin
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Bunu yaptı evet. Peki dizin değil de normal dosyalara değişik kural nasıl ekleyebiliriz? Bir kere (.*) bu wildcard'ı ekleyince, herşey alt üst mü oluyor illa? Şimdi örneğin /signup /register.php?mode=new gibi birşey yapmak istesem?
 

sempaty

1
İyinet Üyesi
Katılım
25 Şubat 2005
Mesajlar
3,824
Reaction score
19
Konum
hawaii. ama sanal tur.
malesef roota (.*) eklerseniz tümüne uygular. benim bildiğim yalnızca !^ yöntemi var

RewriteCond %{REQUEST_URI} !^/signup

RewriteCond %{REQUEST_URI} !^/baskabirlink\.html
 

sempaty

1
İyinet Üyesi
Katılım
25 Şubat 2005
Mesajlar
3,824
Reaction score
19
Konum
hawaii. ama sanal tur.
bu arada,

RewriteRule ^(.*).html$ kat.php?id=$1

yaparsanız, sadece html uzantıları kat.php dosyasına rewrite edebilirsiniz. bunda tüm ( örneğin logo.jpg ) uzantılar etkilenmemiş olur. ama urller
" site.com/adres "
gibi ise yapacak pek bişey kalmıyor
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Yok özellikle .html siz kategori ismi istendiği için böyle yaptım, ama request_uri metodu şimdilik işe yarıyor gibi gözüküyor.
 

Breeze

0
İyinet Üyesi
Onaylı Üye
Katılım
17 Nisan 2007
Mesajlar
1,445
Reaction score
0
Konum
CTRL + W
rewriteEngine on

RewriteCond %{REQUEST_URI} !^/oyunlar/.*
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

rewriteRule ^oyunlar/(.*)-([0-9].*).html$ oyundetay.php?sair_adi=$1&oyun_id=$2

bende sitedeki oyuları listelerken "oyunlar/" klasörü altında göstermeye çalıştım ama oyundetay.php dosyası istediğim gibi çalışmadı yani mesela <table background="XXX.JPG"> XXX.JPG dosyasını oyunlar klasörünün içinde arıyor

nasıl düzeltebilirim?
 

Breeze

0
İyinet Üyesi
Onaylı Üye
Katılım
17 Nisan 2007
Mesajlar
1,445
Reaction score
0
Konum
CTRL + W
<table background="/XXX.JPG">
<table background="../XXX.JPG">

site.com/oyunlar/sayfa.html için ikisi de işe yarar

yardımın için teşekkürler bu benimde aklıma geldide bu seferde dreamweaverda sayfayı tasarlarken image'ı bi üst klasörde arıyor , bulamadığı için göstermiyor sayfayı dizayn etmek zorlaşıyor
en iyi yöntem sayfayı oyunlar klasörünün içine atıp dediğin gibi yapmak herhalde

(FollowSymLinks diye bişey buldum ama ekleyince hata veriyor)
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
<base href="http://www.domain.com">

yapsan mesela <head> kismina.
 

antiTRust

0
İyinet Üyesi
Katılım
12 Nisan 2007
Mesajlar
1,082
Reaction score
0
base tagı ne işe yarıyor? (daha önce hiç kullanmadım)

örneğin bir html sayfası var ve burdaki kodlar src=/resimler/resim.jpg v.s. şeklinde yani adam kendi localinde hostunda çalıştırdığı için direk klasörden dosya ismiyle görüyor problem olmuyor ama sen adamın o sayfasını veya kendine ait bir sayfayı başka yerde kullanacaksan bu base href=" komutundan resimler klasörünün olduğu domain.com adresini kullanırsan sayfa domain.com/resimler/resim.jpg şeklinde ekrana screen eder. yani normalde gözükmeyen şey orda gözükür genelde başka sayfalardan içerik çalmak için kullanılır. genelde sayfalarda /kategori/yazi.php şeklinde olduğu için domain adı koyulmaz başa hızlandırma açısından. base href işte burada imdada yetişir kodları aynen alırsın sayfadan başına o adamın domainini base href ile yazarsın kendi hostuna upload ettin mi onun sayfasının aynısı sende de olur..umarım bilmeyenlere yararlı olmuştur
 

Breeze

0
İyinet Üyesi
Onaylı Üye
Katılım
17 Nisan 2007
Mesajlar
1,445
Reaction score
0
Konum
CTRL + W
örneğin bir html sayfası var ve burdaki kodlar src=/resimler/resim.jpg v.s. şeklinde yani adam kendi localinde hostunda çalıştırdığı için direk klasörden dosya ismiyle görüyor problem olmuyor ama sen adamın o sayfasını veya kendine ait bir sayfayı başka yerde kullanacaksan bu base href=" komutundan resimler klasörünün olduğu domain.com adresini kullanırsan sayfa domain.com/resimler/resim.jpg şeklinde ekrana screen eder. yani normalde gözükmeyen şey orda gözükür genelde başka sayfalardan içerik çalmak için kullanılır. genelde sayfalarda /kategori/yazi.php şeklinde olduğu için domain adı koyulmaz başa hızlandırma açısından. base href işte burada imdada yetişir kodları aynen alırsın sayfadan başına o adamın domainini base href ile yazarsın kendi hostuna upload ettin mi onun sayfasının aynısı sende de olur..umarım bilmeyenlere yararlı olmuştur

çok teşekkürler
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst