wwwshell.php to skrypt napisany w php, pozwalający obejść część ograniczeń związanych z brakiem shella na hostingu. Jako że w home.pl takowego nie ma, musiałem jakiś czas temu ratować się takim wynalazkiem ;)

Założeniem które przyświecało od początku jego istnienia była kompaktowość (wszystko w jednym pliku), używalność, wygoda. Wydaje mi się że jak na razie spełnia wszystkie wymienione ;) Ograniczeniami są PHP >= 4.3.0 i nie zablokowane wykonywanie funkcji proc_open () i proc_close ().

Zalety (z mojego punku widzenia ;) ):

  • wszystko w jednym pliku (biblioteki jQuery pobierane są bezpośrednio z serwera jQuery.com
  • obsługa aliasów
  • prostota użytkowania
  • historia poleceń

Wady:

  • no cóż, to jednak nie prawdziwy shell…
  • brak uzupełniania
  • uprzyjemniacze typu historia wymagają połączenia z netem lub modyfikacji skryptu i używania lokalnych kopii bibioteki jQuery

Znane błędy:

  • nie zapamiętuje ustawionego rozmiaru czcionki w okienku wyjścia
  • czasem z jakiegoś powodu historia nie działa, trzeba np. otworzyć okienko konsoli w ff i je zamknąć, wtedy jest ok :/

Nie sprawdzałem też (ani nawet nie zamierzam jak na razie) sprawdzać jak wygląda i działa pod IE. Może się coś sypać :)

Jeśli ktoś jest zainteresowany tą zabawką, to zapraszam do pobierania na GoogleCode, i komentowania/krytykowania pod tą notką ;)


Przeniosłem na razie bloga (i w sumie nie tylko) z Dreamhosta, z którego radośnie rezygnuję, na home.pl. Przenosiny odbyły się z problemami, konkretnie dwoma:

  1. nie mogłem się zalogować do panelu administracyjnego WordPressa
  2. spi… się kodowanie

Problemy naprawione, a dla potomności:

Problem pierwszy: problem z zalogowaniem się. Problemu by nie było, gdybym zostawił dokładnie taki sam prefix tabel jaki był na dreamhoście. Niestety, wpadłem na pomysł zmiany prefiksu, i tu się wszystko rozjechało. Trzeba było poza aktualizacją pliku wp-config.php (która była oczywista) zaktualizować także zawartośc tabel PREFIX_options i PREFIX_users, zmieniając nazwom opcji prefiksy ze starego (u mnie np wp_opcja) na nowy (w moim przypadku byłoby to coś na kształt urzeniawp_opcja). Bez tego wyświetla się w kółko komunikat że nie mam uprawnień do zobaczenia żadnej strony w panelu…

Problem drugi: kodowanie. Nie udało mi się tutaj zrobić żadnej sztuczki, żadnego prostego zabiegu, nic. W końcu po prostu na dumpie z bazy danych wykonałem szereg operacji podstawiania ‘krzaczków’ na odpowiadające im litery. Zmienionego dumpa wrzuciłem z powrotem do bazy, do tego dodałem opcję (mój plik konfiguracyjny ma kilka lat) DB_CHARSET do pliku konfiguracyjnego, i zaczęło działać poprawnie. Porażka troszkę, ale cóż robić :(

Na tą chwilę wszystko powinno już działać OK, i to zdecydowanie szybciej - Dreamhost do demonów szybkości raczej nie należy ;) Liczę też że dużo bardziej niezawodnie ;)

Jeszcze tylko dopowiem, że przy całej walce z Wordpressem na home, gdzie nie ma shella, wydatnie pomogła mi moja kolejna zabawka: wwwshell.php. Wbrew moim obawom, działa to całkiem nieźle, i gdyby nie brak historii i reakcji na enter po komendzie (tak, wiem, łatwo to naprawić zmieniając typ pola na <input type="text" />), to prawie nie byłoby różnicy ze zwykłym shellem ;)