Avatar billede gedekid Nybegynder
14. august 2007 - 09:24 Der er 10 kommentarer og
1 løsning

kopi af side fra www til localhost

Hej eksperter,

jeg skal have kopieret ALT fra en side der er online og have den lagt ned på en lokal maskine med Apache/PHP/MySQL så den kører som en nøjagtig 1:1 kopi af online versionen.. det kan godt blive lidt af et arbejde som jeg skal gøre det nu da jeg så skal ændre stien på ALLE filer og ALT database indhold da stien peger på roden af serveren... Altså vil den finde et link med www.randerstegl.dk/produkter/ hvor produkter er mappen med det indhold... men på localhost vil jeg så skulle ændre det til http://localhost/randerstegl/web/produkter ... det er en pæn stor side, så det vil tage et godt stykke tid..

På FTP-serveren i roden på www.randerstegl.dk ligger der en mappe der hedder /web/ hvor alt indhold ligger og igen i roden ligger includes med tilhørende filer... men stien til gfx f.eks. er ikke /web/gfx/ men blot /gfx/

mit spørgsmål kommer så, endelig, ...

kan jeg på min localhost, enten i Apache eller .htacces, ændre noget så jeg får en opsætning der ligner ? Altså så at jeg ikke skal ind og ændre stien?
Avatar billede bpuschl Nybegynder
14. august 2007 - 09:47 #1
Hej Gedekid :-)

Det kan du sagtens, med et redirect. D.v.s. at du skal oversætte de kald som bliver sendt til www.randerstegl.dk/produkter til http://localhost/randerstegl/web/produkter noget i stil med

Redirect http://www.randerstegl.dk/produkter http://localhost/randerstegl/web/produkter

Her er et link til lidt doc.

http://httpd.apache.org/docs/1.3/mod/mod_alias.html
Avatar billede gedekid Nybegynder
14. august 2007 - 10:06 #2
Hej bpuschl :-)

Det ser rigtig rigtig fornuftigt ud.. pointene er så godt som dine.. nu fik jeg lige lavet det for meget som eksempel så jeg selv blev helt forvirret.

En produktside på dansk ser online ud som dette: http://www.randerstegl.dk/da/RT801/ - /da/ bliver sat alt efter hvilket sprog man har valgt og er altså ikke en fysisk mappe. /RT801/ bliver genereret udfra databasen igennem noget url rewrite. Men det burde stadig ikke have nogen betydning ud fra det eksempel du har givet mig.

Kan du give mig et nyt eksempel for hvordan jeg kan ændre det?

Hvis jeg har forstået det korrekt så vil Redirect /gfx /randerstegl/web/gfx gøre sådan at alle henvisninger på min 1:1 kopi der henviser til /gfx/flag_da.gif bliver omskrevet til http://localhost/randerstegl/web/gfx ?

Spørgsmålet er så om man kan sætte det én gang så det virker overall?
Avatar billede gedekid Nybegynder
14. august 2007 - 10:16 #3
I den nuværende .htaccess er det denne der genererer den læsevenlige url med sprog og produkt

# Håndterer format visning på produktsider
RewriteRule ^(da|se|no|de|en)/([^/]+)/([0-9]+)/formater/$   
index.php?lang=$1&titel=$2&menuid=$3&show=formater
Avatar billede gedekid Nybegynder
14. august 2007 - 10:35 #4
Undskyld... jeg ved ikke lige hvor jeg var henne...

Det jeg kan gøre er at sætte en redirect i Apache der lyder
Redirect www.randerstegl.dk http://localhost/randerstegl/web/

hvis jeg så skriver www.randerstegl.dk i adresse-baren så ryger jeg til http://localhost/randerstegl/web/ ?

Det skal lige bemærkes at den lokale maskine IKKE er online. Dermed nemlig fidusen :)
Avatar billede bpuschl Nybegynder
14. august 2007 - 10:52 #5
Hm, læste lige at der ikke må benyttes en relativ URL i første parameter af redirect. Derfor kan du ikke benytte dette.

Må jeg spørge, hvorfor at dit website returnere relative URL? Er det ikke muligt at den kun sender f.eks. randerstegl/web/produkter tilbage, således at du kun skal erstatte den relative sti i en config fil?

Jeg har en række lignende setups, med blandt andet open Source produkterne osCommerce og Joomla, hvor jeg laver 2 configuration.php filer som henholdsvis indeholder mine local settings og "live" settings. Kan det være en lsøning?
Avatar billede gedekid Nybegynder
14. august 2007 - 11:00 #6
Shit... Siden er lavet med et hjemmestrikket CMS og deri er så lavet noget med relative URL's.. hvorfor ved jeg ikke da det ikke er mig der lavede det i sin tid.

Det eksempel jeg gav dig var fra sidens egen .htaccess således at /da/RT801/ er det man ser i adressebaren og man kan også komme direkte til produktet ved at skrive /da/RT801/ - har det noget at sige?
Avatar billede gedekid Nybegynder
14. august 2007 - 11:07 #7
Skal lige nævne at sitet er bygget op over Smarty.. Fandt lige noget i smarty.setup

define("DOCROOT","/www/randerstegl/"); - kan det evt. give samme resultat?
Avatar billede bpuschl Nybegynder
14. august 2007 - 11:27 #8
Din rewrite rule sørger for at omskrive /da/RT801/ til index.php kaldet i stedet.

Docroot giver dig den fysiske placering af sitet,dvs at du skal ændre denne parameter til docroot på localhost e.g. c:\apache\htdocs (dårlig eksempel :-)

Har du ikke er parameter som angiver at sitets URL er www.randerstegl.dk?
Avatar billede bpuschl Nybegynder
14. august 2007 - 11:31 #9
Avatar billede gedekid Nybegynder
14. august 2007 - 11:42 #10
Jeg takker for hjælpen ... jeg prøver mig frem.. du får point :)
Avatar billede bpuschl Nybegynder
14. august 2007 - 12:08 #11
Takker, sig til hvis du får brug for yderligere hjælp
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester