Aynı klasörde bir php dosyasına yönlendirmek için RewriteRule nasıl kullanılır?

2 Cevap php

I / somefolder / style.css taleplerini almak ve / somefolder / program.php ile bunları işlemek istiyorum

. Yani, benim htaccess dosyasında aşağıdaki koydu:

rewriteengine on
rewriterule ^style.css$ program.php?css=1 [R=302,L]

Sonuç yerine / somefolder / program.php için yönlendirme, sunucu yönlendirmek için çalışır olmasıdır:

/var/www/html/somefolder/program.php?css=1

Nasıl yönlendirmenin de /var/www/html/ kurtulabilirim? Ben sadece. Htaccess içinde program.php girdikten sonra aynı klasöre varsayılan olacağını düşündüm.

. Htaccess any folder olmadan çalışmak zorunda - bu birçok yerde kullanabileceğiniz bir jenerik senaryo olduğundan, to avoid using rewritebase ben değilim klasörü belirtmek isterim değiştirilmiş.

2 Cevap

Uzaklıkta R bayrağı bırakın ve bir iç yönlendirme alacak:

RewriteRule ^style\.css$ program.php?css=1 [L]

Aksi takdirde dışarıdan yönlendirmek istediğiniz tam URL yolunu belirtin:

RewriteRule ^style\.css$ /program.php?css=1 [R=302,L]

Ya da herhangi bir keyfi klasör için:

RewriteCond %{REQUEST_URI} (.*)/style\.css$
RewriteRule ^style\.css$ %1/program.php?css=1 [R=302,L]

Ben sorun bir ReWrite baz açıklama eksik olduğunu düşünüyorum.

Ayrıca ben sitenizin kök dizininde. Htaccess dosyasını koymak istiyorum. Bu şekilde oluşturduğunuz her yeni dizine bir. Htacess dosyayı kopyalamak zorunda değilsiniz. Ne php dosyanızın ismini değiştirmek isterseniz? Her. Htaccess dosyasını değiştirmek gerekiyor.

Bu benim genel kurallarını kullanarak www.mydomain.com/orange/program.php?css=1 için www.mydomain.com / turuncu / style.css yönlendirme nasıl olduğunu:

RewriteEngine On
RewriteBase /
RewriteRule  ^(.*)/style\.css$ $1/program.php?css=1 [L]