Få Apache2 att läsa .htaccess

Permalänk

Få Apache2 att läsa .htaccess

Jag har just gjort en Drupal-installation på min apache-server (snurrar på en Ubuntu 12.10). För att kunna köra med rena URLer så måste .htaccess-filen i installationskatalogen kunna läsas.

Jag får dock inte apache att läsa denna.

Det jag gjort:

1. Kopierat över drupals htaccess-fil till installationskatalogen
2. Sett till att anvädare är www-data och att denna har läsrättighet till .htaccess-filen
3. Jag har försökt lägga till "AllowOverride All" i en Directory-tag först i /etc/apache2/apache2.conf men efter att ha läst i Ubuntus forum så flyttade jag detta till /etc/apache2/sites-available/default

Inget fungerar.

Någon som har ett bra tips?

Permalänk
Hedersmedlem

Din punkt 3 borde vara det som får installationen att läsa htaccess-filer. Notera att du måste starta om Apache, eller åtminstone läsa om konfigurationen, för att ändringar i sådana konfigurationsfiler ska träda i bruk (inte ändringar i htaccess-filer i sig; de läses in under körning). Enklast läser du om Apaches konfiguration med

sudo service apache2 reload

Kontrollera också för sakens skull att `default` även är symlänkad i `/etc/apache2/sites-enabled`, men så ska det vara som standard. Installationen sköter det som så att man lägger konfigurationsfiler i `/etc/apache2/sites-available`, för att sedan aktivera/inaktivera dessa konfigurationsfiler ("siter") via verktygen `a2ensite`/`a2dissite`. Motsvarande gäller för `mod_`-filer som ligger i `/etc/apache2/mods-available` och `/etc/apache2/mods-enabled` och sköts med `a2enmod`/`a2dismod`.

En annan sak att kontrollera är att du stavat rätt till `.htaccess` när du flyttade filen. Det problemet har jag åkt på en gång...

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk

Tack för snabbt svar. Nu har jag suttit och testat igen men får inte fason på det.
Jag har fått den att läsa .htaccess i web-roten. Men min drupal-installation ligger i en underkatalog (var/www/drupal). Kan det vara det som ställer till det?
Jag kanske tänker lite fel här? Måste jag skapa en separat config-fil till denna site och aktivera den med a2ensite?

Jag har lagt en kopia på min default-fil här om du vill kika
http://pastebin.com/Bbxi8u9n

Permalänk
Hedersmedlem

Pastear din config här:

<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> <Directory /drupal> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

Du ska ange hela sökvägen i din "<Directory /drupal>" rad, dvs "<Directory /var/www/drupal>". Eftersom denna sökväg inte är angiven korrekt (den ska inte vara relativ till DocumentRoot) så kommer den sektionen inte användas alls. Dock så borde ju detta inte vara något problem i sig då du har samma inställningar på "<Directory />", vilket borde användas i stället för alla sökvägar på systemet.

Mycket mer än så borde det inte vara, om konfigurationsfilen ovan är aktiverad och symlänkad in i `/etc/apache2/sites-enabled` genom `a2ensite` som jag nämnde ovan. Eftersom du nämner att det fungerar i roten, men inte i /drupal, så ser jag personligen inte var problemet ligger om ovanstående konfigurationsfil laddas korrekt. Är du säker på att .htaccess-filen inte fungerar, eller fungerar den bara inte som du har tänkt? Det brukar gå snabbt att få "Internal server error" om man skriver "lite fel" i filen — det skulle kunna vara ett bra test för att se om den öht läses av Apache.

Se även Ubuntus hjälpsida eller övriga Googleträffar.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.