Migrera en WordPress-webbplats från en lokal server till produktion

Integrerad med någon WordPress-utvecklarens arsenal är den lokala servern. I den här handledningen vill jag gå dig hela tiden från att installera en lokal server till teman, exportera databaser och bortom.


Vad vi ska göra

I den här handledningen tar jag dig igenom hela processen med att installera en lokal server på din dator, skapa en mock webbplats och implementera den webbplatsen i produktion. I slutet av denna handledning borde du kunna förstå hur man ska:

  • Installera en lokal server och konfigurera WordPress lokalt
  • Importera innehåll till din lokala databas
  • Skapa och redigera en webbplats eller plugin lokalt
  • Installera och konfigurera WordPress på din produktionsserver
  • Importera databasinnehåll till din produktionsplats
  • Överför mappen wp-innehåll som innehåller plugins, teman och andra element
  • Luta dig tillbaka och njut av kunder som älskar dig på grund av minimal stilleståndstid!

Och för mig är det sista punktet det handlar om. Jag förstår att det finns vissa begränsningar för lokala servrar och ibland krävs ett underhållsläge, men genom att använda en lokal server kan du effektivt eliminera nästan all stillestånd på en vanlig webbplats. Utan ytterligare ado, låt oss gräva in!


Steg 1. Installera och konfigurera en lokal server

Jag använder personligen MAMP (jag är en Mac-kille hela vägen), och den är tillgänglig för nedladdning här. För dig Windows-användare skulle jag rekommendera XAMMP, som är tillgänglig här. Det finns också en XAMMP-version för Mac-användare.

Klicka på länken ovan för att ladda ner till ansökan. När det har hämtats dra till programikonen i din programmapp (för Mac-användare), eller använd XAMMP-installationsprogrammet för Windows-användare.

Efter installationen hittar du MAMP in / Applications / MAMP. XAMMP kommer att ligga i Start -> Program -> XAMMP. Det är det för installationen! När du väl öppnat MAMP, se till att du tittar på inställningarna genom att klicka på "Preferences" -knappen. Dina portar ska sättas upp så här på Mac:

Starta den lokala servern för första gången

Nu när den lokala servern är installerad måste vi starta Apache och MySQL-servrarna. XAMMP levereras också med Filezilla och Mercury som ingår, tillvalstjänster.

För att starta servrarna för MAMP, gå till: / Program / MAMP och klicka på MAMP-ikonen. Kontrollpanelen kommer att se ut så här:

I ovanstående bilder kan vi se de gröna lamporna menar att våra servrar är aktiva. På min äldre MacBook var det inte alltid fallet (jag kommer att ta itu med det senare). För nu går gröna medel! Du kan öppna MAMPs startsida genom att klicka på "Öppna startsidan" -knappen. Detta tar dig till din phpinfo, phpMyAdmin-åtkomst och andra viktiga konfigurationsinställningar som vi kommer att använda senare.

För XAMMP kommer kontrollpanelen, som nås på \ xampp \ xampp-control.exe, att se ut så här:

Återigen är det enkla saker. Klicka på "Start" för att starta Apache och mySQL-servrarna. Administratörsområdet kan nås genom att skriva http://127.0.0.1 eller http: // localhost i din webbläsare.

Grattis till installationen av din lokala server!


Steg 2. Installera och konfigurera WordPress på din lokala server

Först, var noga med att ladda ner den senaste versionen av WordPress här. Därefter får du den berömda 5-minuters WordPress-installationen, som också beskrivs här.

  1. Från din lokala servers phpMyAdmin, skapa en ny databas med namnet "wordpress". Du kan lägga till det på den första sidan som kommer upp när du klickar på phpMyAdmin-länken.
  2. Unzip WordPress-mappen och kopiera den till applikationer / MAMP / htdocs för MAMP och program / XAMMP / htdocs för XAMMP-användare. Den nya webbadressen för MAMP kommer att vara http: // localhost: 8888 / wordpress /. Om du arbetar på en webbplats som senare kommer att heter något annat som "blogg", skulle det nu vara en bra tid att byta namn på mappen. URL: n ändras i enlighet med detta.

    Eftersom jag också utvecklar webbplatser utan Wordpress har jag kopierat hela mappen över istället för att ta innehållet ut. Genom att lämna rotstycken i sin egen mapp kan jag också testa Drupal, Joomla och Magento-teman.

  3. I WordPress-mappen dupliceras filen wp-config-sample.php, och byt namn på den till wp-config.php.
  4. Öppna wp-config.php i en editor och börja från linje 17, du vill redigera följande med din konfiguration som finns på din lokala serverns startsida:
     // ** MySQL-inställningar - Du kan få denna information från din webbhotell ** // / ** Databasens namn för WordPress * / define ('DB_NAME', 'database_name_here'); / ** MySQL databas användarnamn * / define ('DB_USER', 'användarnamn_här'); / ** MySQL-databas lösenord * / define ('DB_PASSWORD', 'password_here'); / ** MySQL värdnamn * / define ('DB_HOST', 'localhost');

    Självklart heter vi vår databas "wordpress" i steg 1, så det går där. För MAMP-användare kan användarnamnet och lösenordet ställas in på "root" som det är standardadministratörsanvändaren. Som standard på XAMMP har användaren "root" inget lösenord.
    Du kan lägga till fler användare i WordPress-databasen i phpMyAdmin om du vill. Värdnamnet ska vara som "localhost".

  5. Med wp-config.php fortfarande öppen vill vi också fortsätta och få våra unika autentiseringsnycklar. För att göra det, besök https://api.wordpress.org/secret-key/1.1/salt/ och använd koden som visas för att ersätta raderna 45-52:
     define ('AUTH_KEY', 'sätt din unika fras här'); definiera ('SECURE_AUTH_KEY', 'sätt din unika fras här'); define ('LOGGED_IN_KEY', 'sätt din unika fras här'); define ('NONCE_KEY', 'sätt din unika fras här'); define ('AUTH_SALT', 'sätt din unika fras här'); define ('SECURE_AUTH_SALT', 'sätt din unika fras här'); define ('LOGGED_IN_SALT', 'sätt din unika fras här'); define ('NONCE_SALT', 'sätt din unika fras här');
  6. Spara och stäng wp-config.php.
  7. Börja installationsprocessen genom att besöka wp-admin / install.php. I MAMP, om du är webbadress är http: // localhost: 8888 / wordpress, då kommer du att ange http: // localhost: 8888 / wordpress / wp-admin / install.php.
  8. Om dina inställningar för wp-config.php är korrekta kommer du bli uppmanad att ange bloggnamnet, din e-postadress och användarnamnet.

Om ett fel uppstår, oroa dig inte! Problemet kommer att finnas i din wp-config.php-fil. Gå dit och ta reda på vilken inställning ovan är felaktig.

Nu ska WordPress vara aktiv och redo på din lokala server. Du kan komma åt admin-instrumentpanelen på MAMP på http: // localhost: 8888 / wordpress / wp-login.php. Om du ändrade mappnamnet ändrar du "wordpress" till det nya namnet. XAMMP-användare kan göra bort med: 8888 eller ange 127.0.0.1/wordpress/wp-login.php.


Steg 3. Skapa och redigera din webbplats

Börjar med teman och plugins

Din standard WordPress-installation kommer med ett standardtema som kallas tjugo tio. För att lägga till fler teman kan du kopiera dem direkt till mappen wp-content / themes eller du kan installera dem via WordPress-instrumentpanelen i "Utseende -> Teman". Teman kan redigeras lokalt via "Utseende -> Editor" eller en textredigerare.

Plugins kan också installeras på samma sätt, antingen kopiera dem till wp-innehåll / plugins eller hitta nya plugins via WordPress instrumentbrädan i "Plugins -> Add New". Plugins kan också redigeras lokalt via "Plugins -> Editor" eller en textredigerare.

Att ha en lokal server är också ett bra sätt att testa nya plugins och hitta vilka som fungerar för dina webbplatser. Varje WordPress-utvecklare bör ha en verktygsväska full av plugins som de kan göra arbete för dem till deras förfogande.

Importerar innehåll

Så nu har vi vårt tema och våra plugins, vad sägs om innehåll? Tja, klicka här för att ladda ner en XML-fil full av WordPress-inlägg som ska hjälpa dig att komma igång.

Så här importerar du XML-innehållet till din lokala server:

  1. Gå till "Verktyg -> Importera"
  2. I listan över alternativ som visas klickar du på "Wordpress", eftersom du laddar upp WordPress-innehåll. Detta gäller även när du importerar data från den här webbplatsen till din produktionsplats.
  3. Om det här är första gången du har importerat innehåll, blir du ombedd att installera WordPress Importer. Klicka på "Installera nu". Detta installerar faktiskt ett nytt plugin i vår wp-innehåll / plugins-mapp med namnet "wordpress-importör".
  4. När det är installerat, klicka på länken för att aktivera och köra importören.
  5. Bläddra till posts.xml-filen (eller någon annan exporterad WordPress-databasfil) och ladda upp.
  6. På nästa skärm, ange de nya inläggen till en författare (vanligtvis admin), och se till att klicka på "Hämta och importera bilagor". Jag tycker att det här är till hjälp om jag importerar ny data.

Om du besöker admin-instrumentpanelen ser du nu att du har inlägg, kategorier, kommentarer, sidor och användare att använda när du testar och utvecklar teman och plugins.

Om du importerar data skriver du inte över befintliga data, det lägger bara till vad som finns där. Så oroa dig inte om det när du importerar.

Få de vackra Permalinks

Detta är något som frustrerade mig mycket när jag började arbeta, men lösningen är enkel.

Öppna först httpd.conf-filen i / Program / MAMP / conf / apache /. Linjerna 378-381 kommer att se ut så här:

  Alternativ Indexes FollowSymLinks TillåtOverride None 

Ersätt den koden med:

  Alternativ Indexes FollowSymLinks AllowOverride All 

Dina vackra permalinkar ska vara bra att gå, vilket också skulle hjälpa till att öka din produktion.


Steg 4. Klara produktionsservern

Nu när du har installerat och konfigurerat WordPress på din lokala server kan du tillämpa samma principer för att installera WordPress på din produktionsserver.

Det fina är att eftersom du bara behöver ändra några wp-config.php-databasinställningar, kan du helt enkelt göra följande för att få WordPress igång i en produktionsmiljö:

  1. Logga in på serverns kontrollpanel, navigera till phpMyAdmin och skapa databasen med namnet "wordpress".
  2. Medan du är inloggad i phpMyadmin, se till att ange användarnamn, lösenord och databasvärdesadress, eftersom vi måste redigera dessa värden i wp-config.php.
  3. Redigera wp-config.php för att matcha de nya serverns inställningar.
  4. Ladda hela WordPress-mappen via FTP till din produktionsserver. Återigen kan det här namnges något annat om du vill att den ska vara i en undermapp (ex http://mysite.com/blog/ - där "blogg" är din WP-installation). Om du vill installera WordPress i rotten på din webbplats, flytta mappen till rotmappen på din webbplats och flytta sedan innehållet till din rotmapp vilket lämnar den ursprungliga WordPress-mappen tom. Du kan sedan radera den mappen. Detta kommer också att se till att du flyttar över alla plugins och teman som du har testat med. Du kan ta bort oönskade pluginprogram och teman i ditt produktionsområde genom att ta bort dem från mappen WP-innehåll eller inaktivera dem i WordPress instrumentpanel.
  5. Fyll i den berömda 5-minutersinstallationen som beskrivits tidigare. Kom ihåg att om det finns ett fel beror det nästan alltid på ett fel i inställningarna wp-config.php. WordPress kommer även berätta detta på sin fel sida.

Nu är WordPress aktiv i produktion, men saknar innehåll. Vi måste få vårt lokala serverinnehåll som vi har perfekterat över till vår levande webbplats.


Steg 5. Överföring av databasinnehåll och filer

Exportera det lokala serverns innehåll

För att kunna exportera vårt lokala serverinnehåll måste vi logga in på vår lokala WordPress-kontrollpanel, igen http: // localhost: 8888 / wordpress / wp-login.php för MAMP-användare och http: // localhost / wordpress / wp- login.php för XAMMP-användare.

Därefter bläddra ner till "Verktyg -> Exportera".

Eftersom det här är den första exporten, välj "Allt innehåll" och klicka på "Hämta nu". Som WordPress säger "Detta kommer att innehålla alla dina inlägg, sidor, kommentarer, anpassade fält, villkor, navigeringsmenyer och anpassade inlägg.".

Omedelbart (beroende på databasens storlek) kommer du att ha en XML-fil som har en namnstruktur av sitename.wordpress.year-month-day.xml. Det här är den fil som vi importerar precis som vi gjorde med posts.xml på vår lokala server.

Importerar innehåll till produktion

Eftersom vi bara lärt oss hur du importerar ny data till vår lokala server använder du samma principer för att installera ditt innehåll från din lokala server till din produktionsserver

Exportera och importera direkt i phpMyAdmin

Jag vill också påpeka att du också kan importera och exportera direkt i phpMyAdmin. För att exportera vår lokala serverdata skulle vi:

  1. Öppna phpMyAdmin från startsidan MAMP eller XAMMP.
  2. Klicka på vår databas med namnet "wordpress" eller vad som helst du har namngett WordPress-databasen.
  3. Klicka på "Exportera" fliken och välj en XML-typ export.
  4. Var noga med att markera rutan för "Spara som fil". Eftersom innehållet på min webbplats var liten valde jag att inte komprimera det, men jag rekommenderar det starkt för större databaser.

Detta kommer att spara en databas backup XML-fil direkt till din hårddisk. Nu kan du importera det via WordPress eller din produktionsserver s phpMyAdmin.

För att importera vår nyskapade XML-fil (min sparad som wordpress.xml), upprepa steg 1 och 2 ovanifrån, men i steg 3 klickar du på "Importera". Den skärmen kommer att se ut så här:

Bläddra till din sparade XML-fil och klicka på alternativknappen för XML under "Format för importerad fil".

Och det är alla folk! Du har nu en fullt fungerande webbplats som du skapade och konfigurerat på en lokal server, men exporterades och distribuerades till produktion.


Lokala miljöanvisningar och tricks

Förutom handledningen ovan ville jag kasta ut ett par saker som jag gör medan jag arbetar i min lokala miljö som har visat sig till hjälp när man flyttar till produktion:

Säkra din webbplats innan den går live

Det här året var första gången jag fick en webbplats att bli hackad. Jag vet att det kan vara gammal hatt för vissa, men det finns inget som att ringa från en klient för att rapportera det. Nu var den goda nyheten att det var lätt att ta hand om och säkra, men genom den erfarenheten lärde jag mig att du aldrig kan gå fel med att säkra din webbplats tidigt.

En av de enklaste sakerna att lägga till ett säkerhetslager på din webbplats är att skapa en tom index.php-fil och placera den i mappen WP-innehåll, WP-innehåll / plugins, WP-innehåll / Teman. Det här är en snabbkorrigering som kan göras vid början av utvecklingsprocessen för att skapa ett extra säkerhetslager för din webbplats genom att förhindra indexering av ditt innehåll.

I den index.php-filen skulle jag bara lägga till följande kod:

 

Använd nedetid för att lära dig nya saker

Min lokala server har visat sig vara ovärderlig när jag lär mig insatserna i WordPress-plugins och teman. Eftersom jag inte behöver internet längre kan jag hämta de teman och plugins jag vill ha och när jag får chansen ser över filerna och funktionerna.

Det här låter ganska sunt förnuft, men att ha min lokala server och använda den regelbundet har verkligen utformat det sätt jag utvecklar genom att låta mig lära mig praktiskt taget av andras arbete i sin kod. Och det stora är att om jag fortfarande inte har förstått något, kan jag komma tillbaka till det senare, eftersom det inte är levande och det påverkar inte någon.

Förstå begränsningarna för en lokal server

Nu efter alla positiva saker, här är några saker som bör noteras när du arbetar med en lokal server - främst från mina erfarenheter med MAMP:

  • Var beredd om de lokala servrarna inte startar. Det var en tid, speciellt med min MacBook och MAMP, att varje gång jag gick för att starta på en webbplats, skulle MAMP bara frysa. Jag skulle spendera de första 15 minuterna av ett projekt som jag var exalterad att försöka hitta ut. Typ av dödade spänningen lite! För att avhjälpa detta, försök "Force Quitting" MAMP. Om det inte fungerar kan OSX 10.5 och 10.6-användare vanligtvis öppna Aktivitetsövervakning (finns i Program / Verktyg), välj "Mina processer" och leta efter flera fall av "mysqld". Om det finns flera körningar, radera alla utom en. Det borde få saker tillbaka till det normala.
  • För MAMP är de gröna lamporna som visar att servrarna är på inte alltid pålitliga. För att testa detta, klicka bara på "Startsida", och om det kommer upp är du bra att gå.
  • Vissa formuläråtgärder och avancerade funktioner kanske inte fungerar korrekt. Jag har upplevt detta med ett Amazon S3-plugin som jag utvecklat. För dessa saker kommer jag ofta att skapa en anpassad WordPress-sidmall eller plugin-mapp, installera den på min webbplats via FTP och testa på en privat sida. Du kan till och med installera en underkatalog för att utföra mer testning eller använda Multipress.

Slutsats

Tack för att du gick igenom processen med att installera en lokal server, konfigurera en WordPress-webbplats på den och sedan flytta den här webbplatsen till en produktionsmiljö.

Jag skulle uppmuntra någon av er som har mer erfarenhet än jag att behaga under några andra lokala inställningar som du har, några fler idéer om hur man kan effektivisera migreringsprocessen och andra tips och tricks för att arbeta lokalt. Jag är ju bara en röst i samhället.

Tack för att du läser!