2016-04-07 26 views
0

Ubuntu 14.04 üzerinde çalışan LAMP sunucum var ve her şey iyi yapılandırılmış gibi görünüyor. Tek sorun şu ki, yeniden yazma kuralı herhangi bir hata vermeden bir şekilde göz ardı ediliyor. Sayfa, .htaccess dosyasını değiştirdikten sonra her zamanki gibi yeniden yeniden yüklenir.apache yeniden yazma kuralı yok sayılıyor

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . index.php [L] 

Diğer kurallar, örneğin düzgün çalıştığından: Yapmak çalıştığım, aşağıdaki kodu kullanarak index.php için tüm trafiği yönlendirmektir. deny from all ekler ve sayfayı yeniden yüklerseniz hemen hatayı alırım. Tüm dosya ve klasörler/var/www/root dizininde bulunur. Burada eksik bilmiyorum, ben çözüm :(olmadan bu sorunu ayıklama saat geçirdim.

sayesinde

cevap

0

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule .* index.php [L] 
ben index.php belge kökünü işaret ederek index.php tüm trafiği yönlendirmek için bir çözüm buldu:

<VirtualHost *:80> 
ServerAdmin [email protected] 
ServerName example.com 
ServerAlias www.example.com 
DocumentRoot /var/www/example.com/index.php 
</VirtualHost> 

teşekkürler @Chr yardım için.

0

. sadece tek bir karakterle eşleşir. Birşey uydurmak için .* kullanmayı deneyin.

+0

@Angie Silinen yoruma ilişkin olarak, 'RewriteRule' alt dizelerle eşleşmiyor, yalnızca tam dizeyle eşleşmiyor. Etrafında etkili bir '^ 've' $ 'vardır. Bu size yardımcı oldu mu? Eğer cevabımı kabul edermiysen? – Chris

+0

Merhaba Chris, işe yaramıyor. Sayfalar her zamanki gibi canlanıyor! gerçekten garip. – Angie

+0

@Angie Apache2ctl -M'yi çalıştırarak "mod_rewrite" işlevinin etkin olup olmadığını kontrol edebilir ve Apache yapılandırmanızın 'bloğundaki' AllowOverride' direktifinin ne olduğunu kontrol edebilirsiniz. 'FileInfo' veya' All' içermesi gerekiyor. Bunu kontrol etmesini – Chris

İlgili konular