Przygotowanie i instalacja


Pierwsza rzecz, ściągasz gitbasha dla windowsa stąd https://git-scm.com/downloads
Instalujesz, i od teraz w menu kontekstowym każdego folderu masz dodatkowe opcje takie jak "Git Bash here" - co otwiera konsole.

W tej konsoli pobierasz vi prosto z repo komendą:
git clone https://github.com/vichan-devel/vichan

Większość darmowych hostów oferujących PHP nie posiada zainstalowanego composera - czyli doklejonego na chama menedżera pakietów, ale jest sposób by to łatwo obejść - instalacja composera u siebie i wykorzystanie go do pobrania bibliotek, po czym przerzucenie całości na FTP.

Ściągasz PHP dla windowsa stąd https://windows.php.net/downloads/releases/archives/php-7.0.33-Win32-VC14-x64.zip koniecznie ta wersja, bo tą obsługuje 5v.pl z którego będę korzystał. Wypakowujesz wszystko do jakiegoś katalogu, ja to zrobiłem do "C:\php\"

Domyślnie wyłączona jest tam biblioteka do generowania grafiki gd2, otwierasz plik php.ini (albo php.ini-development lub php.ini-production - jak są oba to otworz obydwa), szukasz linijki:
;extension=php_gd2.dll

I usuwasz średnik z początku żeby ją włączyć.

Ściągasz composera stąd https://getcomposer.org/download/ czyli Composer-Setup.exe. Instalujesz, wyskakuje okienko "Choose the command-line PHP you want to use", nawigujesz tam do wcześniej wypakowanego php.exe. Klikasz next cały czas nic nie zmieniając. Teraz posiadasz composer u siebie w systemie.

UWAG! Na php 7.0.33 nie działa aktualna wersja biblioteki twig, co robić, jak żyć? Ano trzeba w folderze z silnikiem vi otworzyć composer.json i linijkę z:

"twig/twig": "^1.44.2",

Zamienić na:

"twig/twig": "^1.42.5",

Czy coś się może przez to spierdolić? Niewykluczone, ale nie stawiamy tu systemu bankowego.

Wracasz do konsoli gitbasha, sprawdzasz czy composer dodał ci PHP do zmiennych środowiskowych, wpisujesz:
php -v

Jeśli wyświetli się wersja, to wszystko ok, jeśli nie to prawdopodobnie musisz zamknąć okno gitbasha i otworzyć je ponownie. Jeśli nawet to nie pomogło, to coś się zjebało przy instalacji - odinstaluj composera i spróbuj ponownie.

W konsoli gitbasha, będąc w folderze z silnikiem czana, musisz pobrać bazę bibliotek wymaganą przez projekt komendą:
composer update

W folderze z czanem powinien pojawić się folder vendor. Jeśli jest, to znaczy że wszystko poszło pomyślnie.

Jeśli o hosting chodzi, to jak wyżej - możesz spróbować z 5v.pl, ale wszystkie darmowe będą uniwersalnie wpierdalały gówno. Ten jest najprostszy w obsłudze. Łączysz się jakąś FileZillą - innym gównem które nie obsługuje nawet unzipa po stronie serwera - na dane podane w mailu, i przerzucasz cały folder z czanem na hosta. Trochę to potrwa.

Wadą darmowego hostingu jest to, że nie ma na niej ImageMagicka - ergo nie będzie się dało tworzyć animowanych miniaturek gifów/webmów. Najlepiej by to pewnie działało na jakimś najtańszym VPS-sie, ale jak żydzić to po całości.

Teraz nawigujesz w przeglądarce do install.php na stronie swojego czana. Uzupełniasz dane logowania do bazy danych informacjami od 5v.pl z maila. Zaloguj się przez /mod.php danymi admin i password. Zmień sobie domyślne hasło w sekcji Manage users.

Inną ważną rzeczą jest włożenie do katalogu czana pliku .htaccess z zawartością:
Options -Indexes
Tak żeby zapobiec wylistowaniu katalogu przez eksplorer plików w Apachu. Nie chcesz żeby się to indeksowało, ani żeby ktokolwiek tam grzebał. Wrzuć tam jakiś fajny index.html z landing pagem, żeby strona główna nie pokazywała forbidden 403.

Gratulacje, postawiłeś swojego czana.

Dodatkowe info


Czysty silnik vichana nie obsługuje takich rzeczy jak podgląd postów, autoodświeżanie czy dropdown do wyboru styli. Nie można też dodawać boardów do paska na górze bezpośrednio z panelu admina. Po zainstalowaniu silnika na serwerze, w folderze /inc stworzy się plik instance-config.php. Służy on właśnie do włączenia ww. opcji. Należy go ściągnąć z FTP (żeby nie wgrać pustego, bo tam siedzą wszystkie loginy i hasła do bazy danych) i uzupełnić.

Ważna sprawa - nawet w dokumentacji vichana mówią, by nie ruszać pliku config.php, a jedynie instance-config.php, więc najlepiej kopiować nieaktywane opcje z tego pierwszego, do tego drugiego. Przykładowa konfiguracja:

// ...
// Boards
$config['boards'] = array(
    array('b'),
    array('a', 'mu', 'x'),
    array('status' => 'http://status.example.org/')
);

// Styles
$config['stylesheets']['Futaba'] = 'futaba.css';
$config['stylesheets']['Dark'] = 'dark.css';

// JavaScript
$config['additional_javascript'][] = 'js/auto-reload.js';
$config['additional_javascript'][] = 'js/post-hover.js';
$config['additional_javascript'][] = 'js/style-select.js';
Edit
Pub: 27 May 2022 20:12 UTC
Edit: 28 May 2022 21:01 UTC
Views: 129