No de hova lett a node?

szt képe

Sziasztok! Van egy D6-os oldal, ahol szolgáltatói kavarások miatt részben szétesett az oldal. Hogy mi történt pontosan, azt nem tudom, a lényeg, hogy egy pár hónapig a feltett anyagok "más jogosultsággal" mentek a szerverre, weben elérhetők voltak, de ftp-vel már nem látszott.

A kérdés: van egy db node (csatolt képekkel, fájlokkal, linkekkel), ami nagyon megsínylette az akciót, mert noha látszik az adatbázisban (nid=734 :), de az oldalon nem látja még az admin se. A node táblában minden a helyén van. Hogy lehetne feléleszteni? Melyik táblát lehetne piszkálni (ha nagyon kéne)?

Köszi előre is!

Drupal verzió: 
eMeLA képe

Hát mi is történt? Megsérült az adatbázis? Frissítették szervert? Az SQL-t, PHP-t... Mert amit leírtál az elég homályos...

Én kapásból letölteném az adatbázist és az Ftp tárhely tartalmát és megnéznem egy saját lokális szerveren működik-e.

0
0

...mit tudok: http://web.termuves.hu

szt képe

Én is ezt csináltam.
(hogy a szerverrel pontosan mi történt, azt nem tudom, nem árulták el a rendszergazdák...)
Szóval lemásoltam mindent, de lokálba is ez a helyzet: az az egyetlen node nem elérhető (404-es hibával elszáll), se a node/734 se az álnév nem hozza. A többi node/[nid] elérhető.
Szóval igazából az volt a kérdésem, hogy ha a node táblában minden okénak látszik, akkor hol akadhat el a megjelenítés (ami valamelyik táblában mondjuk látszana jó esetben), szóval hogy hol törhet el egy node.

0
0
nevergone képe

Amikor nekem gondjaim voltak a node-okkal DB-hiba miatt, akkor sokat segített a hibakeresésben, hogy bekapcsoltam a Devel modult, kitettem a PHP-kódfuttatás blokkot, majd egy dsm(node_load(42)); segítségével megnéztem, hogy mit kapok a node betöltésekor.
Nálam konkrétan az okozta anno a hibát, hogy nem létezett az a felhasználó, akinek az uid-je a node-hoz volt rendelve. Az is hasonló problémát okozhat, ha a node-ból több verzió van elmentve, és a legutolsónál nincs meg minden mező verziója.

2
0
szt képe

Köszi, nincs még tipped? :)
A node_load semmit nem ad vissza. A user létezik. Végignéztem az összes csatolt kép és file is megvan hibátlanul.
A views egyébként a node összes fieldjét listázza, a csatolmányok is mind megvannak a nézetben. Ha teljes tartalmat állítok be, akkor semmi.

0
0
aboros képe

esetleg valami vicces kedvű munkatárs nem állította be egyedi 404 oldalnak a node/734 -et? :) és a node/734/edit is 404?

0
0

-
clear: both;

szt képe

De jó lenne, ha lenne vicces munkatársam :)
Megnéztem, nem :(
Belenéztem viszont a fájljogosultságokba a files-en belül, és fura, hogy vannak 770-es és 771-es könyvtárak is, és a fájlok is összevissza vagy 660 vagy 664-esek. Nem tudom, ez mitől lehet, de talán ez nem kavar be... Amúgy nem 755 (folder) és 664 (file) kéne, hogy legyen minden? (úgy értem, csak a files-en belül)

0
0
aruna képe

gyanakodsz, én azzal kezdeném, hogy a fájlrendszeren mindenre minden jogot megadnék. Csak a teszt rendszereden, és csak ha van mentésed!

Ha ezeket futtatod a 'files' könyvtáron belül (unix, linux) alatt:

A jogosultságok átállítása:

find . -type d -exec chmod 777 {} \;
find . -type f -exec chmod 666 {} \;

A tulajdonos átállítása (minden a www-data user és www-data csoport tulajdonába kerül), ha a php más user-rel és csoportal hozta létre a fájokat, akkor azt írd be:

chown -R www-data:www-data .

Ezzel az egésszel szerintem annyit nyerhetsz, hogyha ezután sem javul meg a probléma, akkor nem kell a jogosultságoknál keresni a hibát, ha megjavul, akkor igen.

0
0
szt képe

Köszi, ezek sem segítettek, ezek szerint az adatbázisban van valami hiba. És tényleg.
Mert most ott tartok, hogy oké, újra létrehozom a tartalmat, minden megvan hozzá, és szerencsére csak egy node-ról van szó.
A régi tartalmat viszont szeretném az adatbázisban kilőni (mivel csak ott érem el).
De ha az adazbázisban a statust 0-ra állítom, akkor sem szűri ki a views azzal, hogy nem közzétett.
Szóval továbbra is látja a views, de a node megjelenni nem tud.
Ott van, de mégsincs ott, kipusztíthatatlanul :)
Mi akaszthatja meg a megjelenítést, még mielőtt a node adataihoz érne?

0
0
szt képe

Közben valahogy localhoston feléledt a node, de különöset nem csináltam vele, valami valahol "frissülhetett" csendben.
Az élesen átírtam a node id-t a node és a node_revision táblában (tudom, hogy veszélyes, de valahogy végre meg kell oldanom) Meg se kottyan neki, továbbra is a régi id alatt szerepel a views-ban. Minden cache-t ürítettem... Honnan szedi elő mégis a views a régi id-ját a nodenak?

0
0
szt képe

Megoldottam :) Abból indultam ki, hogy a fenti dolog lehetetlen. És akkor hirtelen bevillant, hogy esetleg én egy másik adatbáziban turkálok! Nemá! Demá! Egy újabb phpmyadmin linken kellett volna már belépnem, a régi valami backupszerűségbe vitt. A szolgáltató elfelejtette közölni :( GRRRRR!
És nevergone-nak lett igaza: a node táblában egy nem létező uid tulajdonában volt a node...

6
0