helyes link url-ek beállításalocalhostra másolás után

Szotyi képe

Sziasztok!

Azt hogyan kéne megcsinálni, hogy ha egy weboldalt átmásolunk a helyi gépünkre (localhost) akkor a tartalmakba beszúrt kép és egyéb fájlhivatkozások URL-je helyesen jelenjen meg?

Szerveren minden oké.
Ez, <a href="/sites/default/files/2015_tavasz_a.pdf"> például ide mutat: http://refmenthet.hu/sites/default/files/2015_tavasz_a.pdf

de másolás után localhoston ugyanez a link már ide mutat:
http://localhost/sites/default/files/2015_tavasz_a.pdf pedig ez lenne a helyes:
http://localhost/refmenthet.hu/sites/default/files/2015_tavasz_a.pdf

Jó lenne valamilyen drupalos megoldás, mert az Ubuntus virtual host-ok beállításához nem értek.

Drupal verzió: 
agostonl képe

Én ezt úgy oldottam meg anno, hogy csináltam egy IF elágazást a settings.php fájlban. A $base_url változó lett átvariálva.

0
0
szabozee képe

Igaziból ott kellene beállítani, ahol nem szeretnéd, mert a leírás alapján a Drupal jól működik. Az apache2/sites-enabled/default.conf ( vagy sitename.conf ) file-ban a DocumentRoot /var/www kellene módosítani /var/www/refmenthet.hu -ra, és akkor pontosan az lenne a jó link amit most rossznak tartasz, mert az eredeti oldaladon http://refmenthet.hu/... = a http://localhost/... -tal, ott sincsen még egy refmenthet.hu mappa a / után.

Ha drupal oldalról akarod javítgatni mindenképp, akkor a settings.php és azon belül a $base_url az amit keresel, ahogy fentebb is írták. Ezen kívül a .htaccess -ben a RewriteEngine on sor után tudod még beállítani, hogy minden url elé oda tegye azt, amit szeretnél. ( #-ve van minta is a .htaccess fileban )

Ha a tartalmakon belül "beégetett" url-eket szeretnéd véglegesen megváltoztatni, akkor arra azt a trükköt is el lehet követni, hogy az adatbázis dump-ban valamilyen editorral átcseréled az url-eket és azután importálod vissza.

0
0

szabozee (zee zee zee kukac free mail pont hu)

Szotyi képe

Amiket kipróbáltam de nem működtek:

  1. settings.php-be átírtam a base_url-t a következőképp:
    $base_url = 'http://localhost';
  2. Eredmény: bejött az kezdőoldal smink nélkül (értsd: csak egyszerű szöveg,) és valamennyi menülink ilyesmi, mint például ez: http://localhost/user/password

  3. $base_url = 'localhost';
    Eredmény: smink nélküli kezdőoldal, csak még plusz felül egy hibajelzés is:
    ( ! ) Notice: Undefined offset: 1 in /var/www/html/refmenthet.hu/includes/bootstrap.inc on line 453
    Call Stack
    #	Time	Memory	Function	Location
    1	0.0000	133008	{main}( )	../index.php:0
    2	0.0003	226264	drupal_bootstrap( )	../index.php:15
    3	0.0003	226072	_drupal_bootstrap( )	../bootstrap.inc:1120
    4	0.0004	226796	conf_init( )	../bootstrap.inc:1134

    A menü linkek ilyenné változtak:
    http://localhost/refmenthet.hu/localhost/
    http://localhost/refmenthet.hu/localhost/node/247
  4. Pathologic modult is kipróbáltam:
    Modul nélkül például ezen a nodeon http://refmenthet.hu/node/2059 a kép localhoston ide mutat:
    <img alt="" src="/sites/default/files/Clipboard01.jpg"

    S persze nem jeleníti meg a képet.

    Modult bekapcsolva - majd Webhelybeállítás - Beviteli formák - Full HTML sor végén [ beállítás ] - Pathologic előtt bepipálni [ Beállítások mentése ]
    Adott node szerkesztés és mentés után sem változott a helyzet.

Ha számít valamit egy drupal 6-os oldalról van szó.
Most még kipróbálom a .htaccess fájlt...

0
0

Péter

nevergone képe

Ha Drupal 6-os oldalról van szó:

  1. Frissíts Drupal 7-re vagy 8-ra
  2. Rossz verziót adtál meg a nyitó bejegyzésben
0
0
Szotyi képe

/off topic
1. Igen, az a célom, hogy frissítsek.
Mivel rengeteg (több mint 1000) node-ról van szó, s vagy 4-5 féle tartalomtipusról, illetve majdnem mindhez tartozik 1-1 fájl, ezért azt gondoltam, hogy ez az első lépés, hogy localhoston minden jól működjön.

2. Valóban. Ezt elnéztem.
on topic/

0
0

Péter

szabozee képe

Így, hogy változott a helyzet, változik az is amit javaslok.
Ne használj alkönyvtárat !
A /var/www/refmenthet.hu mappa tartalmát másold be közvetlenül a /var/www mappába és akkor minden linked jól fog működni és frissítheted a 6-ost 7-re.
Jelenleg azért nem működik jól localhost-on, mert a localhoston egy subdir-en belül van a site az élesen meg közvetlenül a docroot-ban. Sok szolgáltatónál néz ki úgy a könyvtárstruktúra, hogy /var/www/domain.neve de ez ne tévesszen meg, mert ezeknél a docroot erre is mutat. A localhoston a docroot alapértelmezetten viszont a /var/www-re mutat.

1
0

szabozee (zee zee zee kukac free mail pont hu)

Szotyi képe

Köszönöm a tanácsaidat, meg hogy foglalkozol a bajommal.

localhoston így néz ki a munkamappám, s ahogy elérem a böngészőből:
/var/www/html/egyikprojekt.hu --> localhost/egyikprojekt.hu
/var/www/html/masikcegnev.hu --> localhost/masikcegnev.hu
/var/www/html/refmenthet.hu --> localhost/refmenthet.hu

nem nagyon akarnám beömleszteni a /var/www/html/- be, mert akkor bár lehet, hogy el lehetne érni localhost/ alatt, s jó lenne, csak elveszne az áttekinthetőség, s az importálás után lehetne takarítani. Ha nem lesz másik megoldás, akkor kipróbálom.

0
0

Péter

Nagy Gusztáv képe

A https://www.drupal.hu/comment/67324#comment-67324 hozzászólás leírja, hogy tudsz saját doméneket hozzárendelni 1-1 mappához. Így localhost/valami helyett pl. a valami lesz a domén.

2
0

Nagy Gusztáv

szabozee képe

Ez a jó megoldás, amit Gusztáv is ír és amit én is írtam még a legelején, hogy módosítod a documentroot-ot. Annyival egészíteném ki, hogy ha több weboldalad is van, akkor a hosts-fileba is praktikus felvenni mindegyiket egyikprojekt.local, masikcegnev.local, refmenthet.local neveken és külön-külön conf file-t hozni létre mindegyiknek az apache-ban. Ha így teszel, akkor mindhárom projekted saját néven is elérhető lesz a localhostod böngészőjében és pontosan úgy fognak viselkedni, mint ahogy az éles oldalon viselkednének. Ne a Drupal felől közelítsed, mert ahogy fentebb is írtam, "Nem Druaplos probléma" és nem is jó, ha különböző projektek ennyire közvetlenül "látják" egymást.

1
0

szabozee (zee zee zee kukac free mail pont hu)