Apache'de mod_rewrite nasıl etkinleştirilir?

157

Ubuntu sistemimde LAMP yığınını yeni kurdum.

Yönlendirme benim için çalışmıyor. Nasıl tamir edeceğimi bilmiyorum. Biri bana yardım edebilir mi?

    
sordu vinoth 12.06.2011 15:45

2 cevap

231

Yeniden yazma modülünü etkinleştirmek için "apache2 enable module rewrite" komutunu çalıştırın:

sudo a2enmod rewrite

Değişiklikleri uygulamak için web sunucusunu yeniden başlatmanız gerekiyor:

sudo service apache2 restart

.htaccess dosyalarında mod_rewrite kullanmayı planlıyorsanız, .htaccess 'yi AllowOverride None ' yi değiştirerek AllowOverride FileInfo dosyasının kullanımını da etkinleştirmeniz gerekir. Varsayılan web sitesi için /etc/apache2/sites-available/default düzenleyin:

    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            # changed from None to FileInfo
            AllowOverride FileInfo
            Order allow,deny
            allow from all
    </Directory>

Böyle bir değişiklikten sonra tekrar Apache'yi yeniden başlatmanız gerekir.

verilen cevap Lekensteyn 12.06.2011 15:49
49

Ubuntu 14.04 ve .htaccess :

ile ilgili özel bir yanıt (yukarıdaki büyük yanıtın bir takipçisi olarak) eklemeye cesaret edeyim

14.04'te, varsayılan yapılandırma dosyasının adı 000-default.conf olarak değiştirildi:

sudo gedit /etc/apache2/sites-available/000-default.conf

Aşağıdakileri dosyanın sonuna ekleyin:

<Directory "/var/www/html">
    AllowOverride All
</Directory>

Bazı nedenlerden dolayı Ubuntu 14.04 ve apache2'de kök /www/html olarak ayarlandı. Web sunucusu kökünü eski iyi /www , open 000-default.conf ve değiştir

olarak değiştirmek isterseniz
DocumentRoot /var/www/html/

-

DocumentRoot /var/www/

ve sonra kapalı olmalıdır

<Directory "/var/www">
    AllowOverride All
</Directory>
    
verilen cevap davidkonrad 17.10.2014 15:00

Etiketlerdeki diğer soruları oku