Info o ciastkach

Eeee...
Żeby strona działała fajnie to trzeba zaakceptować obsługę pewnych plików. Jeśli jesteś nienormalny, nosisz czapkę z amelinium i siedzisz w schronie zbudowanym z poduszek to możesz je sobie wyłączyć. Autor strony nie czerpie żadnych korzyści z cookies (twierdzi nawet, że ten komunikat jest głupi), ale, cóż - Unia wymaga. Korzystając z witryny zgadzasz się z polityką cookies.

Wszystko w budowie...

Aktualizacja ionCube loader na hostingu 1and1

logo php

Czas biegnie, wszystko idzie do przodu. Moment, i już mamy PHP w wersji 7. I tutaj zaczyna się drobny zonk. Jakiś czas temu zakładaliśmy klientowi sklep internetowy. Sklep to płatny ShopGold i wymaga ionCube na serwerze. Niestety w 1and1, w przeciwieństwie do konkurencji, go nie uświadczymy. Na 1and1 trzeba go zainstalować samodzielnie.

IonCube loader to taka bestia która deszyfruje w locie zawartość plików PHP. Używana jest głównie przez firmy które trudnią się programowaniem w PHP. Taki kod dostajemy na płytce lub via email i każdy może sobie do niego zajrzeć. Jako, że jest to czyjaś praca to firma musi się jakoś zabezpieczyć by własne rozwiązania pozostały tajemnicą firmy. Często szyfrowane są pliki licencji i okres wersji demo. W kod PHP może zajrzeć każdy i zmienić określone linijki tak by program pracował wieczyście. Użycie szyfrowania przez ionCube na to nie pozwala - kod jest nieczytelny. IonCube deszyfruje go w locie - użytkownik końcowy nawet tego nie zauważa.

Nie będę opisywał procesu instalacji bo jest on opisany tutaj. Opiszę tylko szybki proces aktualizacji.

Gdy zajrzymy na stronę ionCube to zobaczymy różne wersje loadera. Niby 1and1 każe pobrać wersję 32 bitową, ale wypadałoby to sprawdzić. Dla sprawdzenia trzeba utworzyć plik PHP z zawartością



<?php
    phpinfo();
?>

Należy wgrać go na serwer i uruchomić. W pierwszej linijce mamy to czego chcieliśmy, a wygląda to tak

Ryc. 1. Maszyna w tym wypadku jest w wersji 64 bit

Widzimy też, że serwer jest na Linuksie. Teraz przechodzimy na stronę ionCube i pobieramy wersję dla naszego systemu i naszej architektury. Tutaj mała uwaga - nie chodzi o system operacyjny na naszym komputerze ale na serwerze.

Ryc. 2. Pobieramy paczkę zip lub tar.gz (jeśli siedzicie na Windows to lepszy będzie zip)

Paczkę należy rozpakować. Sytuacja prezentuje się następująco

  • strona sklepu klienta działa w oparciu o PHP w wersji 5.4 która nie jest już wspierana
  • chcemy ją zmienić na wersję najnowszą - obecnie jest nią wersja 7, niestety najnowszą wersją loadera ionCube jest ta dla PHP w wersji 5.6, zatem taką wersję trzeba ustawić dla strony
  • folder ioncube zawiera biblioteki do wersji PHP 5.4 (stan z 2014 roku)
  • jako, że instalujemy ionCube sami to mamy dziesiątki plików php.ini z przekierowaniem do biblioteki 5.4 w podfolderach sklepu

Teraz należy dodać brakujące biblioteki do katalogu ioncube na serwerze. Następnie należy zmienić w panelu klienta 1and1 wersję PHP dla strony. W tym momencie po wejściu na stronę otrzymamy komunikat o nieprawidłowej wersji ionCube. Teraz pora na edycję plików php.ini. Sprowadza się to do zmiany 5.4 na 5.6. I to wszystko. Problemem jest to, że trzeba to zrobić w każdym podkatalogu w którym plik php.ini występuje. Jeśli macie dostęp do SSH to pół biedy bo możecie napisać skrypt który to zrobi za was.

Po odświeżeniu witryny wszystko powinno działać.

Komentarze (2)

csk(admin) ( 2017-03-23 08:36:55 )
Tak, to musi być w każdym podfolderze. Najlepiej zalogować się przez ssh, utworzyć plik php.ini z wiadomą zawartością w jednym miejscu (ścieżka musi być bezwzględna - polecenie pwd pomoże). Potem skrypcik bashowy tworzący dowiązanie symboliczne do pliku php.ini lub skrypcik do kopiowania php.ini do podkatalogów. Ja sobie napisałem coś w ten deseń for out in $(ls -d ./*/);do;cp -u php.ini $out;done; Warunek pętli wykonuję z różnymi argumentami (np ls- d ./*/*/) w zależności ile jest podfolderów. Może mało eleganckie ale aktualizacje sklepu nie są zbyt częste. No i jeszcze musisz ustawić właściwą wersję php w panelu 1and1. Taką jak w pliku php.ini.
Łukasz ( 2017-03-22 20:04:46 )
pomocy :(
Dobry wieczór mam preste shoop na 1and1 już 3 dzień siedzę sobie w ioncubie niby zainstalowany komunikat na stronie sklepu był że działa ale dalej jest coś nie tak przy załadowaniu modułu tak spytam na szybko php.ini z ścieżką do ioncube muszą byc w każdym podfolderze, wszędzie ??

Napisz komentarz lub zgłoś błąd

Dodane w dniu 9 marca 2016 przez Michał Misztal
Kopiowanie powyższych wypocin dozwolone pod warunkiem podania źródła, znaczy tandemu autor + link do strony