Aktivieren der .htaccess-Datei, um den Pfad neu zu schreiben (funktioniert nicht)


17

In allen Tutorials werde ich aufgefordert, Folgendes zu bearbeiten: /etc/apache2/sites-available/defaultDiese Datei existiert jedoch nicht für mich. Innerhalb dieser Datei müsste ich folgendes bearbeiten:

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
#AllowOverride All
#AllowOverride AuthConfig FileInfo Indexes Limit Options=All, MultiViews        
Order allow,deny
allow from all </Directory>

Wie soll die Datei aussehen und soll ich sie selbst erstellen?

Ich habe auch eine 000-default.confDatei, aber der obige 'Code' ist auch nicht drin.

Antworten:


58

Für Apache Version 2.4 und höher müssen Sie gehen

/etc/apache2/apache2.conf

Sie müssen diese Datei bearbeiten (Sie sollten Root-Berechtigung haben). Ändern Sie den Verzeichnistext wie folgt;

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Starten Sie nun Apache neu.

service apache2 restart

Hoffe, es funktioniert.


Können Sie mir bitte erklären, was dies bewirkt? Wie passt das zum .htaccess? Mein .htaccess wird überhaupt nicht gelesen.
chx101

1
Die wichtige Zeile hier ist AllowOverride All, dass alle Einstellungen in .htaccessDateien festgelegt (überschrieben) werden können. Siehe docs: httpd.apache.org/docs/2.4/mod/core.html#allowoverride
jacwah

18

In Ubuntu 14.04 (und Apache 2.4) wurde der Standard-DocumentRoot von / var / www in / var / www / html geändert.

Erstens aktivieren Sie a2enmod

sudo a2enmod rewrite 

und

sudo service apache2 restart

sudo nano /etc/apache2/sites-enabled/000-default.conf

füge diese Zeilen am Ende hinzu

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

und

sudo service apache2 restart

1
Diese Lösung funktioniert bei mir, weil ich zuerst mod_rewrite aktivieren muss. Danke vielmals.
kishor10d

1
Dies funktionierte wirklich für Apache 2.4. Ich habe meinen Tag gerettet. Auch nach der Bearbeitung von maing hat apache2.conf .htaccess nicht funktioniert, aber so hat es funktioniert.
Faisal Sarfraz

9

Wenn Sie nicht bei jedem Upgrade / Update die gleiche Konfiguration wiederholen möchten

Der beste Weg ist:

Bearbeiten oder erstellen Sie eine Konfigurationsdatei

/etc/apache2/conf-available/httpd.conf

Hinzufügen

<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>

Aktivieren Sie die Konfigurationsdatei

sudo a2enconf httpd

Starten Sie Apache neu oder laden Sie es neu

sudo service apache2 restart

oder

sudo service apache2 reload

Es ist fertig!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.