IMHO ist diese Frage nicht Ubuntu-spezifisch und sollte auf Server Fault migriert werden .
Paolo
2
Das OP hat Lamp auf UBUNTU installiert. Wie viel Ubuntu-spezifischer möchten Sie?
Wojox
1
@wojov: Ich weiß nichts über diesen Fall, aber dieses Argument funktioniert nicht. "Wie kann ich diese Anwendung (unter Ubuntu) verwenden?" sind meistens off-topic.
23
Dies ist kein "Wie kann ich eine Anwendung verwenden", sondern ein "Wie kann ich eine bestimmte Funktion in Ubuntu aktivieren". Apache unter Ubuntu verwendet ein anderes Konfigurationslayout, in dem jedes Modul und jeder virtuelle Host eine Datei ist /etc/apache2und das mit a2*Programmen aktiviert werden kann.
Lekensteyn
Sie sollten beschreiben, was Sie getan haben, um das Problem
einzugrenzen
Antworten:
238
Um das Rewrite-Modul zu aktivieren, führen Sie "apache2 enable module rewrite" aus:
sudo a2enmod rewrite
Sie müssen den Webserver neu starten, um die Änderungen zu übernehmen:
sudo service apache2 restart
Wenn Sie sich mit mod_rewrite in Plan - .htaccessDateien benötigen Sie auch die Verwendung zu ermöglichen , .htaccessindem Dateien AllowOverride Nonezu AllowOverride FileInfo. Bearbeiten Sie für die Standardwebsite Folgendes /etc/apache2/sites-available/default:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
# changed from None to FileInfo
AllowOverride FileInfo
Order allow,deny
allow from all
</Directory>
Nach einer solchen Änderung müssen Sie Apache erneut starten.
<Directory "/var/www/html">
AllowOverride All
</Directory>
Aus irgendeinem Grund ist in Ubuntu 14.04 und Apache2 der Root auf gesetzt /www/html. Wenn Sie wollen wieder gute alte den Webserver root ändern /www, open 000-default.confund ändern
DocumentRoot /var/www/html/
zu
DocumentRoot /var/www/
und dann sollte es natürlich sein
<Directory "/var/www">
AllowOverride All
</Directory>
Danke für die Info! Auf diese / neue Weise können wir www als Ordner verwenden, in den wir alle Websites stellen, und html ist standardmäßig "website" für localhost. Kann wichtig sein, wenn Sie mit dem Öffnen von Ports für die Welt spielen - auf diese Weise kann Ihr localhost keine Ordner anderer Projekte sehen.
Vladimir Vukanac
1
Es funktioniert nicht für mich. Ich benutzeUbuntu 14.04.4 LTS
/etc/apache2
und das mita2*
Programmen aktiviert werden kann.Antworten:
Um das Rewrite-Modul zu aktivieren, führen Sie "apache2 enable module rewrite" aus:
Sie müssen den Webserver neu starten, um die Änderungen zu übernehmen:
Wenn Sie sich mit mod_rewrite in Plan -
.htaccess
Dateien benötigen Sie auch die Verwendung zu ermöglichen ,.htaccess
indem DateienAllowOverride None
zuAllowOverride FileInfo
. Bearbeiten Sie für die Standardwebsite Folgendes/etc/apache2/sites-available/default
:Nach einer solchen Änderung müssen Sie Apache erneut starten.
a2enmod
quelle
sudo a2enmod rewrite
undFileInfo
repariert es für mich!Ich wage es, eine spezielle Antwort (als Folge der großartigen Antwort oben) in Bezug auf Ubuntu 14.04 hinzuzufügen und
.htaccess
:In 14.04 wird der Name der Standardkonfigurationsdatei geändert in
000-default.conf
:Fügen Sie am Ende der Datei Folgendes hinzu:
Aus irgendeinem Grund ist in Ubuntu 14.04 und Apache2 der Root auf gesetzt
/www/html
. Wenn Sie wollen wieder gute alte den Webserver root ändern/www
,open 000-default.conf
und ändernzu
und dann sollte es natürlich sein
quelle
Ubuntu 14.04.4 LTS