Apache .htaccess <ifModule burada izin verilmiyor


13

PHP 5.5 ile Ubuntu Precise üzerinde Apache çalıştırmak

var/www/Bana erişmeye çalışmak bana 500 veriyor.

/var/log/apache2/error.log

gösterileri:

/var/www/web/.htaccess: <IfModule not allowed here

benim .htacessim:

DirectoryIndex app.php


<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
    RewriteRule ^(.*) - [E=BASE:%1]

    RewriteCond %{ENV:REDIRECT_STATUS} ^$
    RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule .? - [L]

    RewriteRule .? %{ENV:BASE}/app.php [L]
</IfModule>

<IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>       
        RedirectMatch 302 ^/$ /app.php/       
    </IfModule>
</IfModule>

Benim apache.conf içine ekledi:

<Directory />
AllowOverride ALL
</Directory>

Ve apache'yi yeniden başlattıktan sonra işe yaradı.

Yanıtlar:


25

.Htaccess dosyasından yapılandırmayı etkinleştirmek için apache'nizi yapılandırmanız gerekir. Dizin bölümünde, seçeneğinizin olduğundan emin olun.

Allowoverride ALL 

daha fazla bilgi için allowoverride hakkında daha fazla bilgi .

Kurulumunuzda sadece mod_rewrite kullanıyorsanız, yalnızca FileInfo ayarlayabilir, diğer sitelere yeniden yönlendirme yapabilmek için her zaman Options parametresini SymLinksIfOwnerMatch olarak ayarladım .

Allowoverride FileInfo 
Options SymLinksIfOwnerMatch

Umarım bu yardımcı olacaktır, bu yapılandırmayı zaten ayarladıysanız, lütfen sanal ana makine yapılandırmanızla bilgi ekleyin.


Bu yeni bir Apache kurulumu. Apache2.conf dosyasında <Directory /> bölümü yok. Yukarıda güncellememi ekledim. Teşekkürler
Kiksy

Apache'yi yeniden başlatmayı unuttum. Şimdi çalışıyor.
Kiksy

1
Sonunda eksik bir Directorydirektifim vardı . Eklendikten sonra düzgün çalıştı. Sanırım bu Apache 2.4 sürümünde yeni çünkü 2.2 ile çalışırdı ...
Alexis Wilke

1
Evet, Allowedoverride için varsayılan değer Apache 2.3.9'da değiştirildi.
mlissner
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.