Moet je apache opnieuw opstarten om de herschrijfregels in .htaccess van kracht te laten worden?

Ik heb mijn .htaccess-bestanden naar de productieservers gepusht, maar ze werken niet. Zou een herstart de volgende stap zijn, of moet ik iets anders controleren.


Antwoord 1, autoriteit 100%

Een herstart is nietvereist voor wijzigingen in .htaccess. Er is iets anders mis.

Zorg ervoor dat uw .htaccess de instructie bevat

RewriteEngine aan

wat vereist is, zelfs als het ook aanwezig is in httpd.conf. Controleer ook of .htaccess leesbaar is door het httpd-proces.
Controleer de error_log – deze zal u informeren over eventuele fouten in .htaccess alsdeze wordt gebruikt.
Het plaatsen van een opzettelijke syntaxisfout in .htaccess is een goede controle om er zeker van te zijn dat het bestand wordt gebruikt — u zou een 500-foutmelding moeten krijgen op elke pagina in dezelfde map.

Ten slotte kun je een herschrijflog inschakelen met commando’s zoals de volgende in je httpd.conf:

RewriteLog “logs/rewritelog”

RewriteLogLevel 7

Het aldus gegenereerde logbestand geeft u de bloederige details van welke herschrijfregels overeenkwamen en hoe ze werden afgehandeld.


Antwoord 2, autoriteit 53%

Nee:

Apache maakt gedecentraliseerd beheer van configuratie mogelijk via speciale bestanden die in de webstructuur worden geplaatst. De speciale bestanden worden meestal .htaccessgenoemd, maar elke naam kan worden opgegeven in de AccessFileName-richtlijn… Aangezien .htaccess-bestanden bij elk verzoek worden gelezen, worden wijzigingen in deze bestanden onmiddellijk van kracht…


Antwoord 3, autoriteit 18%

Van de apache-documentatie:
Meestal is het probleem dat AllowOverride niet zo is ingesteld dat uw configuratierichtlijnen worden nageleefd. Zorg ervoor dat er geen AllowOverride None van kracht is voor het betreffende bestandsbereik. Een goede test hiervoor is om afval in je .htaccess-bestand te plaatsen en opnieuw te laden. Als er geen serverfout wordt gegenereerd, heeft u vrijwel zeker AllowOverride None van kracht.


Antwoord 4, autoriteit 4%

Alleen als je nietde mod_rewrite module aan Apache hebt toegevoegd.

U hoeft Apache alleen opnieuw op te starten als u Apache “.conf”-bestanden wijzigt.


Antwoord 5, autoriteit 2%

Ik heb hetzelfde probleem en het lijkt erop dat de PiedPiper-post over AllowOverride zeer nuttig was. Controleer uw httpd.conf-bestand op “AllowOverride” en zorg ervoor dat het is ingesteld op Alles.


Antwoord 6, autoriteit 2%

In het geval van .htaccess is herstarten niet vereist als het niet werkt, waaronder waarschijnlijke redenen.

  • AllowOverrideMogelijk niet ingesteld welke gebruiker kan instellen in httpd.conf of moet mogelijk contact opnemen met de serverbeheerder.

  • Controleer de bestandsnaam van .htaccess het moet .htaccess zijn en niet htaccess.txt zie hiervoor een handleiding om er een te maken.

  • Probeer Options -Indexesof deny allsoort eenvoudige instructie te gebruiken om te zien of het werkt of niet.

  • wis de browsercache elke keer als er een regel is voor omleidingen of iets dergelijks als de vorige omleiding in de cache is opgeslagen, lijkt het alsof de dingen niet werken.


Antwoord 7

Wat staat er in uw .htaccess? Regels herschrijven? Controleer of mod_rewrite is geïnstalleerd en ingeschakeld.

Andere dingen? Probeer AllowOverride in te stellen op ‘all’ in die map.

Other episodes