Technikai fórum
Átköltöztetés után nem szinkronizál Office365-ből
Sziasztok!
Adott egy működő Moodle site, melynek verziószáma 3.6.4. A felhasználók az Office365-ös fiókjukkal tudnak belépni az oldalra.
Egy hete tárhelyet váltottunk, az új szolgáláltató cPanelen keresztül átköltöztett mindent a régi tárhelyről az újra. Minden tökéletesen működik, kivéve az Office365 szinkronizálást. Vagyis be tudnak lépni vele a Moodle környezetbe, de ha új felhasználót veszek fel az Office365-be, az nem szinkronizálódik a Moodle környezetbe. Eddig ez megtörtént legkésőbb 2-3 óra elteltével, de most már a pár napja felvett új felhasználó nem szinkronizálódik a Moodlebe.
Semmi más nem változott, a site domain neve, aldomain neve maradt a régi az átköltöztetés során.
Szerintetek mi lehet a gond? Mit nem veszek észre?
Segítségeteket előre is köszönöm!
Közben megtaláltam ezt... Frissítésre szorulnak a pluginek... Szerintem nem ezzel lehet a gond, ugyanis eddig frissítés nélkül is működött a szinkronizálás...

Ez pedig az Office365 beállítási képernyője, ahol mindent rendben mutat.

Szia!
Az ütemezett feladat (cron) fut a szerveren? Futnia kell, hogy szinkronizálja a felhasználókat.
Üdv:
Gábor
Portál adminisztráció / Értesítéseket
Ha azt írja, hogy a cron 24 órája nem futott, akkor nem megy.
Illetve a cpanelen az ütemezett feladatoknák (cron jobs) kell legyen egy olyan feladat, melynek pathtomoodle/admin/cli/cron.php a vége az utasításnak. Lásd kép.

Köszi a választ, próbálkozok vele...
Azonban rögtön hibába ütköztem:
A Portáladminisztráció/Értesítések alatt ez a hibaüzenet fogad:
"Moodle requires the iconv PHP extension. Please install or enable the iconv extension."
Ezt az iconv-t hogyan tudom bekapcsolni?
Ellenőriztem a cPanelt is, ott a lenti képen látható beállítások szerepelnek - tehát van cron.php végződésű utasítás.
Szertintem ezzel az iconv-vel lehet a gond, nem?

A Portálkezelés / Szerver / Környezet alatt nézd meg, hogy még mi hiányzik.
Az iconv-t a cPanel-en a Select PHP version alatt lehet bekapcsolni cPanel verziótól függően. Lásd kép.
Azt hogy mi a pontos probléma az error.log-ból lehetne kiolvasni. De egyenlőre akkor nézd meg mi hiányzik.

Szia!
Hát elég sokminden hiányzik... Lásd a lenti képet.

Náma a Select PHP-nél ezek vannak (nincs iconv bővítmény):

De az is érdekes, hogy a Select PHP-nél be van kapcsolva a ZIP és a fileinfo is, mégis úgy jelenik meg a Moodle-ben, mintha ki lenne kapcsolva. Én ezt nem értem...
Nos. Hol is kezdjem? A Moodle 3.6.4 nem támogatja a 7.4-s PHP-t. Lásd itt:
https://docs.moodle.org/dev/Moodle_3.6_release_notes
Állítsd vissza 7.2-re! Ott ugyanúgy be kell majd állítani a kiegészítőket. Majd ellenőrizd megint a környezetet a Moodle portál adminisztráció alatt!
A Moodle könyvtárban levő .htaccess állománnyal lehet állítani a PHP verziót, de itt nem hiszem, hogy ez fenn áll.
Gábor
Ebből látszik, hogy nem vagyok egy nagy PHP guru... :)
Utánaolvastam és látom, hogy tényleg nem támogatja a 7.4-es PHP-t a 3.6.x-es Moodle. Átállítottam 7.2-esre: a .htaccess fájlban átírtam a lenti képen pirossal aláhúzott résznél a 74-et 72-re. Most a Moodle azt mondja a Portálkezelés-Szerver-PHP-vel kapcsolatos infónál, hogy 7.2.-34-es PHP-t használok.
A cPanelen a Select PHP-nál szintén átállítottam 7.2-re és kiválogattam a bővítményeket - itt továbbra sincs iconv bővítmény. De hiába kapcsoltam be a bővítményeket a Portálkezelés-Szerver-Környezetnél továbbra is pirossal jelzi a már a cPanelben bekapcsolt bővítményeket...
Sőt, az Office365 szinkronizálás hiánya is fennál a továbbiakban is.... És ez bosszant leginkább, mert erre lenne a szükségem leginkább...

Szia!
A Portálkezelés / Szerver / Feladatok / Ütemezett feladatok alatt keresd ki az Office365 szinkronizációs feladatot. Ha fut, akkor rákattintva a listában le tudod tölteni a hozzá tartozó log fájlt, amiből kiderülhet mi is a pontos probléma. Ha megvan a log és nem jutsz vele előre, akkor a következő válaszban csatold!
Persze ha a környezet eleve nem jó, akkor valószínűleg ott lesz a probléma.
.htaccess állományt akkor kell használni, ha a default cPanel beállítások nem megfelelőek erre a domain-re. Tehát például több domain / alkalmazás van a tárhelyen és mindegyik más PHP verziót kíván, akkor érdemes használni, mert a .htaccess felülírja a cPanel alapbeállításokat. Amennyiben csak ez az egy Moodle van a tárhelyen, akkor érdemes a .htaccess állományt átnevezni/törölni, hogy ne vegye figyelembe és használja a cPanel beállításokat.
A PHP iconv kiterjesztés miatt, kapcsolatba kell lépj a tárhely szolgáltatóval. Azt nem lehet a cPanelen beállítani. A többit viszont be kell tudjad kapcsolni.
Üdv:
Gábor
Szia!
Nekem nincs ilyen útvonal, hogy Portálkezelés / Szerver / Feladatok / Ütemezett feladatok csak Portálkezelés / Szerver / Feladatok / Ütemezett feladatok (tehát Feladatok nélkül - csatoltam a képernyőképet).
Ha ebbe belemegyek, akkor a következő postban látható Office365-re vonatkozó feladatok vannak a listán. Hiába kattintok bármelyikre, nem jön ki semmilyen lista - lehetséges, hogy egyáltalán nem is futnak?
Itt egyedül a fogaskerék ikonra tudok kattintani, ahol a cron időzítést tudom csak állítani. Semmi mást.
Tehát egyáltalán nem érem el a log fájlt...
A .htaccess állományal kapcsolatban:
Ezen a tárhelyen van még egy Joomla oldal és egy régebbi Moodle 2.4.x oldal, amit már nem használnk (érzelmi okokból tartottam meg - szándékomban áll törölni). Most a javaslatodtra ugye átírtam a Moodle 3.6.x olal .htaccess fájljában a PHP verziót 72-re és alapban beállítottam ezt a verziót cPanelben is - telepítve a fent jelzett bővítményeket. A Moodle oldalt nem zavarja (egyelőre) a 7.2-es PHP. Itt nekem az a furcsa, hogy hiába vannak a cPanelben bekapcsolva a bővítméntyek, azt a Moodle nem látja...
iconv:
Akkor ezzel kapcsolatban majd kapcsolatba lépek a tárhelyszolgáltatómmal. Különben ez az iconv-s "probléma" az oldalon máshol is előjön. Például, ha a tanulóim egy feladatnál állományt adnak át, akkor kapnak egy hibaüzenetet amely hivatkozik az iconv-re. A fájlt át tudják adni, csak zavaró ez az iconv-s hibaüzenet...

Én Moodle 3.11-n néztem. Most hogy mondtad, elővettem egy 3.5-ös Moodle-t.
Ami nem tetszik, hogy a Sync users with Azure AD Alapeset "Nem" állapotban van. Ez úgy hangzik mintha ki lenne kapcsolva. A leírás szerint ez külön be kell kapcsolni: https://docs.moodle.org/311/en/local_o365#User_sync.
.htaccess problémakör
Azt próbáltam, hangsúlyozni, hogy ne használj .htaccess-t a 3.6.4-s Moodle-hoz, hanem csak a cPanel beállításokat, mert ki tudja hogy a .htaccess-ben hivatkozott PHP milyen beállításokat olvas be. Valószínű nem azokat, nem azt a PHP-t, amit te beállítottál a cPanelen. A többi domain-nél, alkalmazásnál használj inkább .htaccess-t ha szükség van rá.
Ha így se megy akkor a tárhelyszolgáltatónál kérdezd meg ezt is.
Üdv:
Gábor
Szia!
Kezd ez az egész dolog egyre érdekesebb lenni... Szerintem máshol is gond lehet. Kezdem sorjában...
1. Ellenőriztem az általad küldött linket. Az a gond, hogy nekem egyáltalán nincs a Microsoft Office365 Intergrations-nál "Options" fülem, sem "Sync Users from Azure AD" menüpontom (lásd a képet - ezek a menüpontok vannak és sehol sincs "Sync Users from Azure AD"). Így nem tudom leellenőrzini sem, hogy a szinkronizálás ki van-e kapcsolva vagy sem...
2. Ellenőriztem "Application ID" és "Application key" alapján az Azure AD-ben az alkalmazásomat és azt mondja, hogy HIBÁS! Sőt, alig találtam meg! Arról persze nem tájékoztat, hogy mi a hiba oka, csak azt mondja, hogy lépjek kapcsolatba az informatikai részleggel, ami jelen estben saját magam vagyok...
2a. De! Ugyan ezt az Application ID-t és Application key-t használom az OpenID-s bejelentkezési módszerhez is, ami ugye szükségeltetik, hogy be tudjak jelentkezni O365-ös fiókkal. OTT MŰKÖDIK, mert ugye simán be tudok jelentkezni a Moodle környezetbe.
Úgyhogy nagyon nem értem mostmár, hogy mi lehet a gond...
.htaccess probléma:
Akkor félreértettelek, elnézést.... :)
Most megpróbáltam azt, hogy a .htaccess fájlt átneveztem .htaccess-1 -re a cPanel fájlkezelőjének segítségével (nem akartam azonnal törölni). Az oldal betöltésekor kaptam egy hibaüzenetet:
"
Parse error: syntax error, unexpected ':', expecting ';' or '{' in /home/poljosk/public_html/newemi/lib/classes/component.php on line 1266
"
Tehát ez a beállítás sem jött be...
Kezdek nagyon elszomorodni, hogy semmi sem akar összejönni...
Update:
És még valami az O365-el kapcsolatban:
Nem hagyott nyugodni a dolog, ezért O365 alatt készítettem egy új felhasználót - ő ugye még véletlenül sem tudott volna felszikronizálódni a Moodle-be. Kinyitottam a Moodle-t és ezzel az új felhasználóval próbáltam bejelentkezni: SIKERÜLT! Azonban bejelentkezéskor rögtön ellenőriznem kellett az új felhasználó adatait (név, e-mailcím stb) és után hozzáadhattam az új felhasználót a Moodle-höz.
Ebből arra következtetek, hogy az O365 és a Moodle között működik a kapcsolat, csak az a fránya automatikus szinkronizálás nem akar működni.
Nem lehetséges az, hogy a cPanelben a CRON műveletem van rosszul beállítva?

A hitelesítő kiterjesztések így működnek, ahogy írtad. Tehát ha felveszel egy felhasználót az Azure AD-ben és megpróbálsz bejelentkezni a Moodle-ben, akkor amennyiben jó a kapcsolat a két rendszer között, akkor sikerülni fog bejelentkezni és a felhasználót létrehozza a Moodle-ben. Ez már az első képernyőképről látszott, amit küldtél. A szinkronizációs szkript arra való, hogy egyeztesse a két adatbázist és töröljön vagy hozzon létre felhasználókat. a Moodleban
A cron-t ellenőrízni tudod a cPanel Terminál segítségével. A parancssorba bemásolod az ütemezett feladatból a parancsot. Ha nem kapsz hibát akkor elvileg lefut. Utána érdemes lefuttatni az utolsó paraméterek (dev/null meg a 2>&1 nélkül)
.htaccess
Hát ez tényleg nagyon érdekes. A hibaüzenet azt jelezheti, hogy valamelyik plugin, komponens nem tud betöltődni, de akkor miért töltődik be a másik PHP-val. Rejtély.
Ha gondolod egyeztessünk egy időpontot és ránézek.
Szia!
Lefuttattam a CRON-t termiálról, az eredmény képernyőképét a csatoltam. Szerintem van valami gond, mert amikor másodszorra lefuttattam a dev/null meg a 2>&1 nélkül, akkor hibát írt ki - "Permission denied".
Amúgy én is gondolkodtam már azon, hogy megkérlek nézz rá az egészre... Legjobb lesz, ha egyeztetünk időpontot. Privát üzenetet küldhetek?

Meg beírtam hosszabb formában is (lásd a képet)

/usr/local/cpanel/3rdparty/bin/php -v
Persze. Írj nyugodtan!
Nos igen... Ennyire értek ezekhez a CRON-okhoz. :)
Az alapján készítettem el a CRON-t, ahogy a cPanel ajánlotta. Ez, amelyikben a "3rdparty" szerepel a szolgáltató készítette el nekem amikor átköltöztetés volt. Őszintén szólva, azt sem tudom melyik a jó...
Most lefuttatam ezzel a 3rdpaty-s verzióval is, csatoltam az eredményt. Előtte azonban csináltam egy új felhasználót a Moodle-ben, de nem szinkroniozálta át így sem...
Köszi, akkor majd jelentkezem neked privátban holnap. Ma már hagylak téged is pihenni...
Előre is köszönöm a segítséged és az eddigit is!
