For å klone et nettsted lokalt Local WP er veldig bra. Problemet er at det av og til begynner å gå tregt, til og med helt fra starten og på kraftige maskiner.
Og klart, når det går tregt, blir det ganske frustrerende. For poenget med å jobbe lokalt, i tillegg til sikkerheten, er jo å jobbe raskere, ikke å vente tre sekunder hver gang du åpner en adminside.
I prosjektet med det nye nettstedet mitt skjedde dette, men jeg ville ikke bytte verktøy. Jeg ville ikke sette opp Docker, kaste miljøet eller begynne fra null. Jeg ville at Local WP skulle bli (veldig) brukbart igjen.
Etter å ha prøvd flere ting er dette de fem stegene som faktisk fungerte for meg.
Det finnes flere optimaliseringsmuligheter, men jeg holdt meg til disse, og nå går det lokale oppsettet mitt som en kule.
Índice de Contenidos del Artículo
- 1. Bekrefte at Xdebug var deaktivert
- 2. Endre domenet fra .local til .test
- 3. Utelukke Local WP-mappene i Windows-antiviruset
- 4. Deaktivere plugins jeg ikke trengte lokalt
- 5. Rense databasen fra Local-shell
- Resultat
- Ofte stilte spørsmål
- Hvorfor er Local WP tregt i Windows?
- Er det bedre å bruke .test enn .local i Local WP?
- Kan Xdebug gjøre Local WP tregere?
- Er det trygt å utelate Local WP-mapper i Windows Defender?
- Hvilke mapper bør utelates fra antiviruset hvis jeg bruker Local WP?
- Forbedrer det ytelsen i Local WP å deaktivere plugins?
- Hvordan kan jeg rense WordPress-databasen i Local WP?
- Kan jeg bruke disse oppryddingskommandoene i produksjon?
- Må jeg bytte fra Local WP til Docker hvis det går tregt?
- Hvilken justering kan forbedre Local WP mest i Windows?
1. Bekrefte at Xdebug var deaktivert
Det første var å sjekke Xdebug.
Xdebug brukes til å debugge PHP. Hvis du skal sette breakpoints, inspisere variabler og gjøre seriøs debugging, perfekt. Det er det det er til.
Men hvis du ikke bruker det, kan det gjøre miljøet ganske mye tregere.
I Local WP sjekkes dette fra nettstedets panel:
Local WP > nettstedet ditt > fanen Overview / Tools > Xdebug
I mitt tilfelle var det allerede deaktivert, så jeg trengte ikke å røre noe. Men av erfaring var det den første mistenkte som måtte utelukkes.
Regelen er enkel: hvis du ikke aktivt debugger PHP, skal Xdebug være deaktivert.
Her var det ikke “løsningen” i mitt tilfelle, siden det allerede var av, men det koster ingenting å sjekke før man blir sprø av andre ting.
2. Endre domenet fra .local til .test
Denne endringen merket jeg.
Jeg hadde nettstedet med et domene som endte på .local (yg.local) og endret det til yg.test.
I Local WP gjør du det slik:
- Åpne Local WP.
- Velg nettstedet.
- Gå til fanen Overview.
- Finn feltet Site domain.
- Trykk på Change.
- Endre domenet fra .local til .test.
- Bekreft endringen.
- Start nettstedet på nytt.
Deretter går du inn med den nye URL-en:
https://yg.test
Eller, hvis du ikke har SSL aktivert i Local:
http://yg.test
Hvorfor fungerer det?
Fordi .local kan skape trøbbel i enkelte miljøer på grunn av hvordan det løses på nettverksnivå. .test er langt mer beregnet på lokal utvikling og unngår noe av den absurde friksjonen.
Det er en enkel endring som hjalp i mitt tilfelle.
3. Utelukke Local WP-mappene i Windows-antiviruset
En annen viktig justering.
Hvis du jobber med Windows, kan Windows Defender stadig skanne WordPress-filene, plugins, temaer, uploads, databasen, logger, cacher og interne Local-tjenester.
Og klart, WordPress lokalt flytter enorme mengder små filer. Hvis antiviruset begynner å inspisere alt som berøres av PHP, MySQL eller nginx, går det utover ytelsen.
Jeg deaktiverte selvfølgelig ikke antiviruset; jeg la bare til unntak.
I Windows:
- Åpne Windows Sikkerhet.
- Gå til Virus- og trusselbeskyttelse.
- Rull ned til Innstillinger for virus- og trusselbeskyttelse.
- Trykk på Administrer innstillinger.
- Rull ned til Utelatelser.
- Trykk på Legg til eller fjern utelatelser.
- Legg til utelatelser av typen Mappe.
Den viktige mappen er den for lokale nettsteder:
C:UsersDIN_BRUKERLocal Sites
Og også de interne mappene til Local, som vanligvis ligger i stier som:
C:UsersDIN_BRUKERAppDataLocalProgramsLocal
Og:
C:UsersDIN_BRUKERAppDataRoamingLocal
I mitt tilfelle var det spesielt viktig å utelate Local Sites, fordi det er der nettstedet faktisk ligger: WordPress, plugins, temaer, uploads og alt Local stadig berører.
Etter at du har lagt til unntakene, bør du stoppe og starte nettstedet på nytt fra Local WP.
4. Deaktivere plugins jeg ikke trengte lokalt
Neste steg var ganske åpenbart, men noen ganger glemmer vi det eller lar være for å simulere produksjonsmiljøet bedre.
Det finnes plugins som gjør eksterne kall, planlagte oppgaver, sikkerhetssjekker, backups, logger, cacher, SEO-analyser, integrasjoner med newsletters, overvåking, bildeoptimalisering og tusen andre ting.
Alt dette kan være overflødig lokalt, avhengig av hva du tester.
Så jeg gikk gjennom pluginlisten og deaktiverte dem jeg ikke trengte for arbeidet akkurat da.
Spørsmålet var dette:
Trenger jeg dette pluginet aktivt for det jeg gjør nå?
Hvis svaret var nei, deaktiverte jeg det.
I mitt tilfelle:
- Backup-plugins.
- Genesis-plugins.
- Sikkerhetsplugins.
- Cache-plugins.
- Analytics-plugins.
- Plugins som starter planlagte oppgaver
Færre aktive plugins betyr mindre belastning, færre bakgrunnsprosesser og færre ting som konkurrerer om ressurser.
Likevel så jeg ikke noen stor forbedring her, så det kan være lurt å la dette steget være til slutt hvis alt det andre ikke er nok.
5. Rense databasen fra Local-shell
Det siste steget var å rense databasen.
WordPress samler veldig lett opp rot: revisjoner, automatiske utkast, transients utløpte, kommentarer i papirkurven, spam, foreldreløse metadata og pluginrester.
For å gjøre det åpnet jeg nettstedets shell fra Local WP:
Local WP > nettstedet ditt > Open Site Shell
Før jeg ryddet, tok jeg en sikkerhetskopi av databasen:
wp db export backup-before-cleanup.sql
Deretter kjørte jeg denne oppryddingsblokken:
wp post delete $(wp post list --post_type='revision' --format=ids) --force
wp post delete $(wp post list --post_status='auto-draft' --format=ids) --force
wp post delete $(wp post list --post_status='trash' --format=ids) --force
wp comment delete $(wp comment list --status=spam --format=ids) --force
wp comment delete $(wp comment list --status=trash --format=ids) --force
wp transient delete --expired
wp db query "DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts p ON p.ID = pm.post_id WHERE p.ID IS NULL;"
wp db query "DELETE cm FROM wp_commentmeta cm LEFT JOIN wp_comments c ON c.comment_ID = cm.comment_id WHERE c.comment_ID IS NULL;"
wp db query "DELETE tm FROM wp_termmeta tm LEFT JOIN wp_terms t ON t.term_id = tm.term_id WHERE t.term_id IS NULL;"
wp db query "DELETE um FROM wp_usermeta um LEFT JOIN wp_users u ON u.ID = um.user_id WHERE u.ID IS NULL;"
wp db optimize
Pass på én ting: dette antar at tabellprefikset er wp_.
Hvis du er på Windows og denne variabelsyntaksen ikke fungerer for deg, bruker du prefikset som returneres direkte:
wp db prefix
og erstatter det manuelt.
Dette steget er ikke noe man gjør lettvint i produksjon. Lokalt, med en tidligere backup, ja.
Resultat
Etter disse fem stegene begynte Local WP å gå ganske mye bedre. Logisk, fordi min Ryzen 7 2700 Pro med NMVE og 24GB er betydelig kraftigere enn produksjonsserveren.
Derfor var det klart for meg at det var verdt å bruke en liten stund.
Nå går det som det skal, og jeg har spart meg for mange små stunder.
Oppsummert blir det:
- Sjekke at Xdebug er deaktivert.
- Endre domenet fra .local til .test.
- Utelukke Local WP-mapper i Windows Defender.
- Deaktivere unødvendige plugins lokalt.
- Rense databasen fra shell.
I praksis: ta ballast ut av miljøet.
I dette tilfellet er Local WP ikke tregt av én enkelt grunn, men på grunn av summen av småting: domeneoppløsning, antivirus som ser på hver fil, plugins som ikke trengs og en database full av rester.
Jeg målte ikke hver enkelt ting med stoppeklokke, men på følelsen. Derfor vet jeg hva som fungerte for meg.
Nå har jeg den lokale kopien min som går som en kule, så jeg er tom for unnskyldninger for å jobbe i produksjon og ikke teste.
Og du, bruker du fortsatt den samme unnskyldningen?
Ofte stilte spørsmål
Hvorfor er Local WP tregt i Windows?
Local WP kan være tregt i Windows av flere samlede årsaker: lokal domeneoppløsning, antivirus som skanner for mange filer, Xdebug aktivert, unødvendige plugins eller en lokal database full av rester. Det finnes ikke alltid én enkelt skyldig.
Er det bedre å bruke .test enn .local i Local WP?
I mange tilfeller, ja. Å endre domenet fra.localtil.testkan forbedre oppløsningen av nettstedet lokalt og unngå unødvendige nettverksproblemer. Det er en enkel endring, og hvis Local WP går tregt, er den verdt å prøve.
Kan Xdebug gjøre Local WP tregere?
Ja. Xdebug er veldig nyttig for å debugge PHP, men hvis du ikke bruker det, kan det legge ekstra belastning på miljøet. Derfor bør det være deaktivert med mindre du faktisk driver med debugging.
Er det trygt å utelate Local WP-mapper i Windows Defender?
Det kan gjøres med forsiktighet. Poenget er ikke å deaktivere antiviruset, men å utelate konkrete mapper i det lokale miljøet for å hindre at Windows Defender hele tiden inspiserer tusenvis av små WordPress-filer. Det fornuftige er å begrense utelatelsene til Local WP-stier og dine lokale nettsteder.
Hvilke mapper bør utelates fra antiviruset hvis jeg bruker Local WP?
Den viktigste er som regelC:UsersDIN_BRUKERLocal Sites, fordi det er der dine lokale nettsteder, plugins, temaer, uploads og filer som Local WP stadig berører, ligger. Det kan også gi mening å se på Locals interne mapper iAppDataLocalProgramsLocalogAppDataRoamingLocal.
Forbedrer det ytelsen i Local WP å deaktivere plugins?
Det kan hjelpe, selv om det ikke alltid er den viktigste endringen. Lokalt er plugins for backups, sikkerhet, cache, analytics, planlagte oppgaver eller eksterne integrasjoner ofte overflødige. Hvis du ikke trenger dem for det du tester, er det bedre å deaktivere dem.
Hvordan kan jeg rense WordPress-databasen i Local WP?
Du kan gjøre det fra nettstedets shell med WP-CLI. Før du rører noe, bør du eksportere en backup medwp db export. Deretter kan du slette revisjoner, automatiske utkast, spam, utløpte transients og foreldreløse metadata, og avslutte medwp db optimize.
Kan jeg bruke disse oppryddingskommandoene i produksjon?
Ikke lettvint. Disse kommandoene gir mening lokalt og med en tidligere backup. I produksjon må hver handling gjennomgås mer nøye, tabellprefikset bekreftes og man må sørge for at ingenting nødvendig slettes.
Må jeg bytte fra Local WP til Docker hvis det går tregt?
Ikke nødvendigvis. Før du bytter miljø, er det verdt å prøve enkle justeringer: deaktivere Xdebug, bruke.test, utelate antivirusmapper, redusere aktive plugins og rense databasen. I mange tilfeller holder det å fjerne ballast fra miljøet.
Hvilken justering kan forbedre Local WP mest i Windows?
Det avhenger av tilfellet. I denne artikkelen var de tydeligste endringene å gå fra.localtil.testog utelate Local WP-mappene i Windows Defender. Forbedringen kommer som regel av flere justeringer sammen, ikke av en magisk løsning.

Legg igjen en kommentar