Hej, jag har arbetat med Drupal i kanske 2 år snart, men jag känner mig inte riktigt bekväm med hur jag arbetar, speciellt inte mot kund. Jag jobbar som så att jag först skapar hemsidan från en färdig databasmall och lite CSS-grunder typ Blueprint lokalt genom WAMP. Sen drar jag ut sidan oftast på en "dev.kundnamn.se" via ftp så att kunden kan se det färdigställda materialet. Efter det så sitter jag och jobbar på dev-domänen eftersom jag vill att kunden ska kunna se de följande uppdateringarna, men då går ju allting slöare pga internet m.m gentemot localhost.
Det jag skulle vilja göra är att kunna fortsätta jobba lokalt och att det ändå dyker upp uppdateringar på "dev.kundnamn.se" så jag slipper dra över enstaka css-filer osv hela tiden, visst det kanske blir svårt, men iaf så att jag slipper tanka upp allt innehåll via FTPn konstant. Jag har använt Drush tidigare via Virtual Box men känner inte att det är så smidigt och den skäl ganska mycket av mitt ram-minne. Har tittat lite på Windows-installation av Drush men jag fattar inte hur man installerar det riktigt...
Jag har läst lite om såna här Hosting-sidor som man kan ställa in att localhost ska vara = kundsidan, men det kostar pengar för man köper typ molnetbaserade servrar av Amazon m.m, de skapar även schemalagda databasbackuper vilket låter trevligt. Jag såg att det fanns nåt liknande till Wordpress (som vanligt). Finns det kanske någon "gömd" modul som jag inte hittat som skulle kunna förenkla mitt arbetssätt som ni skulle kunna dela med er av?
En annan grej som är irriterande är ju att mina sajter blir "localhost/drupalsidan" där alla bilder blir då "drupalsidan/sites/all/themes/blueprint/images/bild.jpg". Laddar jag sedan upp materialet skarpt via FTP till t.ex. www.kundsidan.se så blir istället bildadresserna "sites/all/themes/blueprint/images/bild.jpg" (notera utan "drupalsidan") och det gör att bilderna måste gå in manuellt och ändra sökvägarna på, hur löser jag detta enklast? Har tittat lite på att ställa om i hosts-filen för localhost, men det kommer ju innebära att för varje nytt projekt måste jag göra en ny ompekning från localhost till t.ex. "ny_kundsida 127.0.0.1".
Skulle vara väldigt tacksam om man fick lite feedback! :)
Comments
HeiMitt första tips är att
Hei
Mitt första tips är att du sätter upp en utvecklingsmiljö med en lokal webserver som du använder för att utveckla lokalt på din egen dator. T ex Mamp eller en virtuell ubuntu server via virtualbox t ex. Sedan för varje projekt du skapar skapar du en ny vhost-fil (t ex dev.min-awesome-sajt.se som definierar i vilken mapp på servern som domänen X pekar på) som apache (eller vad man nu använder) läser av samt lägger till den i den lokala hosts-fil (/etc/hosts) på alla *nix-system (unix/linux/mac os x). Glöm inte att starta om apache efter du lagt till en vhostfil etc.
Om du använder samma domännamn lokalt som på test servern slipper du dessutom problemet med att bilder etc får olika sökväg som du beskriver.
Om det är ett krav att kunden skall kunna fortsätta lägga upp innehåll på testservern (vilket i utgångspunkten inte alltid är att föredra) måste du separera innehåll och konfiguration. Ett sätt att skicka upp ny funktionalitet utan att påverka innehållet på testservern (dvs slippa skicka databasdumpar hit och dit) är att använda modulen features för att paktera ihop all din nya konfiguration (vyer, fält, variabler/settings mm) till en modul. Denna modulen flyttar sedan du över till testservern manuellt via ftp, eller ännu bättre genom att versionshantera den med GIT.
Om du versionshanterar all din kod (även css mm) kan du enkelt flytta över alla aktuella ändringar med ett enkelt kommando, och då känns det inte lika jobbigt att hålla reda på vilken fil man nu har varit inne och ändrat i. Har man inte möjlighet att installera git på test-servern (läs delat webbhotell) kan man köra ett program som heter git ftp, som skickar upp all aktuell kod som är ändrad via ftp till en angiven server, så slipper man installera git på servern.
Lycka till!
/ BoboDrone, NodeOne Göteborg
Drupal: http://drupal.org/user/398315
Tackar för svar, ska kolla
Tackar för svar, ska kolla igenom detta! :)