. Htaccess ModReWrite yardım

3 Cevap php

Benim ReWrite koduyla bazı sorun yaşıyorum. . Htaccess dosyası alt etki klasörde olduğuna dikkat edin (...public_html / baska /)

Ben sadece bir sayfa isteği yeniden yazmaya çalışıyorum:

http://subdomain.mysite.com/home
http://subdomain.mysite.com/index.php?page=home

Benim. Htaccess dosyası bu gibi görünüyor ...

RewriteEngine On
RewriteRule ^/([A-Za-z0-9\-\_])$ /index.php?page=$1

Eğer bir şey dışarı atlamak mı?

3 Cevap

Geçerli kural muhtemelen (taksim sonra) bir karakter uzun URL'ler için çalışıyor!

Ekle +, bir veya daha fazla karakter belirtmek için, ya da bir * sıfır ya da daha fazla

Denemek

RewriteEngine On
RewriteRule ^/([A-Za-z0-9\-\_]*)$ /index.php?page=$1

Eğer bir. Htaccess dosyasında kurallarını kullanmak istiyorsanız, RewriteRule desen dizin başına yol öneki bağlamsal şerit gerekir. . Htaccess dosyası belge kök yer alıyorsa /, sen önde gelen / şerit gerekir.

Ayrıca karakter kümesini ölçmek gerekir. Aksi takdirde sadece one karakter tarif olur.

Yani bu kuralı deneyin:

RewriteRule ^([A-Za-z0-9-_]+)$ index.php?page=$1

Bence

RewriteRule ^([^/]*)$ /index.php?page=$1 [L]

ok ;) olduğunu