Mina .htaccess
-filer avlyssnar WordPress ”.htaccess
-fil.
Vilka moduler och vilka inställningar (specificerade av .htaccess
) krävs för att WordPress ska fungera? Med andra ord, var kan jag hitta WordPress ”standard .htaccess
fil?
Kommentarer
Svar
Här är standardkoden för den filen.
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
du kan kontrollera den här för standard-htaccess-fil.
http://codex.wordpress.org/Using_Permalinks .
Tack. Jag hoppas att det hjälper lite.
Kommentarer
- Se chatten här om detta.
- !!! Svaret är föråldrat. Använd det nya: wordpress.stackexchange.com/a/250918/33667
Svar
WordPress innehåller inte .htaccess
i filform.
Reglerna skrivs i fil av save_mod_rewrite_rules()
funktion och genereras av $wp_rewrite->mod_rewrite_rules()
.
Obs att installationen på flera platser har olika (mer komplexa) regler och verkar hanteras annorlunda.
Kommentarer
- +1 för rätt riktning. Snälla, granska om jag förstod problemet rätt med mitt svar. Jag tror att det centrala bara är att använda Rewrite_WP API, inte att uppfinna hjulet med personliga .htaccess-filer.
Svar
Använd den senaste versionen av standard .htaccess
Svar
Använd Freenode ”s #wordpress för att hitta rätt dokumentation, vanligtvis i /topic
. Där hittade jag nyckeln Class WP_Rewrite
här , den officiella wordpress.org är i bästa fall vilseledande och marknadsföring. Hur som helst, blanda inte Apaches omskrivningsregler med WP ”s omskrivningsregler, även om namngivningen av WP antagligen kommer från Apache-ekvivalenten.
WP_Rewrite API anger
Du kan lägga till regler för att utlösa din sidvisning och bearbetning med den här komponenten. En frontkontrollers fullständiga funktion finns inte, vilket innebär att du inte kan definiera hur mallfilerna laddas baserat på omskrivningsreglerna.
så du måste använda API: t för att göra ändringarna, inte helt säker på vad det betyder men jag tror det betyder att du inte kan lita på din hårda kodade .htaccess -filer – saker kan förändras även med olika WD-versioner! Så använd API: et.
avlyssning
Koden här har vissa villkor om .htaccess-filen finns – inte 100% av deras slutsatser eftersom de inte väldokumenterad och kan inte förstå namngivningen där men det centrala budskapet är förmodligen att det säkra sättet att upprätthålla omskrivningsreglerna är att använda WP_Rewrite API kan WP förändras i framtiden.
Till exempel en enkel Apache-rewrite RewriteRule ^hello$ Layouts/hello.html [NC,L]
är uppenbarligen något som add_rewrite("^hello$", "Layouts/hello.html")
, h aven ”t testade men försökte följa API: et nedan:
add_rewrite_rule (line 19) Add a straight rewrite rule. see: WP_Rewrite::add_rule() for long description. since: 2.1.0 void add_rewrite_rule (string $regex, string $redirect, [string $after = "bottom"]) string $regex: Regular Expression to match request against. string $redirect: Page to redirect to. string $after: Optional, default is "bottom". Where to add rule, can also be "top".
Relaterat
-
http://pmg.co/a-mostly-complete-guide-to-the-wordpress-rewrite-api
-
Tack till toscho för att du har hjälpt här , lite småprat i chatten.
Kommentarer
- Jag är ganska säker på att jag har missförstått något här, snälla, granska den här chatten här . Avlyssnade det för att min blogg var på root -level vilket betyder något som www.hello.com/blog/?
htaccess
filer.