Htaccess ile muhtemelen komut tüm Uri'nin yönlendiriliyor

2 Cevap php

I am trying to design a small site where most of (95%) of site assets will be passed through home sort of PHP script, and the remaining 5% are being hosted from a subdomain (background images, logos, etc. What I would like is that whenever a page is called, say www.example.com/blog/My_trip_to_the_andes the page that would be called is htdocs/nexus.php and that script would be able to discover what URI was requested. From that URI the script will determine what the user is asking for and generate it. As the redirects happen the headers need to be maintained, so the script receives any POST data or COOKIE data.

Ben site kök dizininde bir. Htaccess ile bunu başarabilirsiniz inanıyorum. Ama ben documentation bu konuşmaya görünmüyor. Htaccess ve ile hiçbir deneyimi az var.

Bu bile iyi bir fikir mi? Ben her sayfa isteği bazı 404 izleme ve yönlendirmeleri yapmak, bu yüzden oturum açabilirsiniz bir komut dosyası yoluyla gitmek istiyorum, kapı çapraz site kaynak isteklerinin, ve ben bile henüz düşünemiyorum şeyler tutun.

2 Cevap

. Htaccess; -

<IfModule mod_rewrite.c>
RewriteEngine On

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /htdocs/nexus.php [L]
</IfModule>

Ve aslında denirdi dosya $_SERVER['REQUEST_URI'] olarak mevcut olmalıdır

Farklı bir etki üzerinde statik kaynakları sakini beri, sizin nexus.php bu mod_rewrite kural dosyası ile tüm istekleri gönderebilir:

RewriteEngine on
RewriteRule !^nexus\.php$ nexus.php [L]

Orijinal İstenen URL $_SERVER['REQUEST_URI'] (bu da URL sorgu ve sadece URL yolunu içerdiğini unutmayın) sonra kullanılabilir.

Eğer erişimine izin vermek istediğiniz başka dosyalar varsa Ancak, önceki kurala bağlı bu ek koşul ile dışlıyor yapabilirsiniz:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule !^nexus\.php$ nexus.php [L]

Şimdi doğrudan mevcut dosyaların üzerine eşleştirilir olamaz sadece istekleri (!-f) nexus.php için yeniden edilmektedir.