Invision Power Board z serii 2.1.* do komercyjna seria znanego skryptu forum dyskusyjnego. Jedyne legalne źródło IPB z tej serii to wykupiona licencja w IPS.
ZALETY
- profesjonalny skrypt forum dyskusyjnego
- ładny i funkcjonalny wygląd. Dobra ergonomia elementów forum
- możliwość rozszerzenia forum o liczne dodatki
- IPB SDK projekt/zbiór klas PHP rozwijany przez użytkowników umożliwiający rozległą integrację IPB z innymi skryptami czy też tworzenie nowych w oparciu o funkcjonalność forum
WADY
- złożony interfejs panelu admin
- skórki, pliki językowe przetrzymywane w bazie danych (może to utrudniać edycję)
- skrypt komercyjny
By zainstalować IPB 2.1.* potrzebujemy PHP w wersji co najmniej 4.3.0 oraz bazę MySQL w wersji co najmniej 3.23. Gdy mamy odpowiedni serwer zawartość katalogu
upload wysyłamy na serwer. Nadajemy CHMOD 755 na katalogi
skin_cache i
uploads a plik
conf_global.php na 666 (lub 777 jeżeli pojawią się komunikaty o błędach w dalszym etapie). Następnie w przeglądarce otwieramy stronę http://www.mojastrona.pl/forum/install/ (katalog install forum). Pojawi się strona instalatora. Klikamy na
proceed by przejść dalej. Pojawi się druga strona, na której musimy wpisać dane:
SQL Host - host bazy danych, zazwyczaj localhost,
SQL Username - login/nazwa użytkownika bazy danych,
SQL Password - hasło do bazy danych.
MySQL Table Type - typ tabel bazy danych, możemy bez obaw wybrać MyISAM, a jeżeli mamy nowszą wersję MySQL to możemy spróbować INNODB (tabele z obsługą tranzakcji) co może uchronić nasze forum przed niektórymi problemami z bazą danych.
SQL Table Prefix - prefiks tabel w bazie danych. Warto coś podać np. "forum" (jeżeli chcemy zainstalować kilka IPB to każdy musi mieć inny prefiks). Druga część to login, hasło i email admina forum. Po wypełnieniu formularza klikamy na "Proceed". Potem klikamy na "Click here to continue" aż dojdziemy do "CLICK HERE TO LOG IN!" - po kliknięciu na ten link przeniesiemy się na forum gdzie powinniśmy zalogować się jako administrator korzystając z podanych przy instalacji danych.
Warto usunąć katalog install.
Wchodzimy do
Admin CP i wybieramy zakładkę
look and feel a z lewego menu
Import a Language:
Spolszczenia możemy pobrać z
invisionboard.pl. Pakiet spolszczający forum od strony usera ("normalne" spolszczenie) po rozpakowaniu zawierać będzie m.in. plik
ipb_language.xml.gz (lub podobny). W panelu admina we wspomnianym formularzu wybieramy ten plik a w polu
Enter the name for this new language set wpisujemy "Polski" i wysyłamy formularz. Przechodzimy do
Manage Languages (lewe menu) i klikamy obok języka "Polskiego" na
Make Default Language
Następnie wybieramy zakładkę
TOOLS and SETTINGS i klikamy na
General settings i wyszukujemy pola z kodowaniem:
Wpisujemy
utf-8 i wysyłamy formularz (klikając na przycisk na dole strony!) Jeżeli forum będzie po polsku lecz polskie znaki nie będą się wyświetlały poprawnie to ustawiamy kodowanie na
iso-8859-2. Po tych operacjach forum powinno posiadać polskojęzyczny interfejs:
Sposób instalacji zależy od wersji. Dla IPB 2.1.5 pakiet spolszczenia zawiera w sobie 2 katalogi: acp_loaders i action_admin. Wrzucamy je do katalogu
sources IPB zastępując istniejące pliki. Ja natrafiłem na drobny problem - spolszczenie forum było w UTF-8 a spolszczenie Panelu Admina w ISO-8859-2 przez co PA nie miał polskich znaków :P
NOTKA: edytując pliki tekstowe pod MS Windows (głównie, tyczy się też innych systemów operacyjnych) należy korzystać z edytora tekstowego, który pozwala wybrać kodowanie pliku (iso-8859-2 czy utf-8). Zapis w standardowych edytorach zapisze w formacie windowsowym.
Skórka to zazwyczaj dwa pliki XML (lub xml.gz) a jeżeli skórka jest prosta to może zawierać 1 plik xml. By dodać skórkę wchodzimy do Panelu Admin, wybieramy zakładkę
LOOK and FEEL a następnie z menu po lewej
import/Eksport skórek (import/Eksport themes). Na dole będą dwa formularze importu:
Pierwszy służy do importu pliku xml skórki a drugi do impotu pliku xml z grafiką (Zawierającego w nazwie "images") Dodajemy najpierw plik XML skórki, wysyłamy formularz a potem robi tak samo z plikiem xml grafik. Po dodaniu skórkę będzie można wybrać w profilu lub też można ustawić ją jako domyślną w PA. (Zarządzanie skórkami / Manage Themes):
Wystarczy kliknąć na trzecią ikonkę (po prawej od oka)
Jeżeli posiadamy starą wersję IPB to narażeni jesteśmy na ataki z wykorzystaniem znanych luk, można jednak trochę podkręcić "zaporę". W index.php na samym początku możemy dodać:
<?php
$_COOKIE = array_map("strip_tags", $_COOKIE);
$_GET = array_map("strip_tags", $_GET);
function hacked($data)
{
$data2 = $data;
$data = strtolower($data);
IF(ereg('\.\./', $data))
{
die('../ in GET');
}
IF(ereg('union', $data))
{
die('union in GET');
}
IF(ereg('select', $data))
{
die('SELECT in GET');
}
IF(ereg('drop', $data))
{
die('DROP in GET');
}
IF(ereg('=', $data))
{
die('= in GET');
}
IF(ereg('%', $data))
{
die('% in GET');
}
return $data2;
}
$_GET = array_map("hacked", $_GET);
Na początku usuwamy kod (PHP, HTML itp.) z ciastek i zmiennych _GET (linki) następnie mamy małą funkcję utrudniającą znacznie przeprowadzanie ataków SQL injection poprzez linki. Dodanie:
$_POST = array_map("strip_tags", $_POST);
Spowoduje że dane z formularzy również będą pozbawione kodu (HTML i innego). Zwiększa to bezpieczeństwo (trochę paranoidalnie) lecz uniemożliwia publikację (nawet poprzez tag code) jakiegokolwiek kodu HTML czy PHP. Uniemożliwia (nigdy nie mów nigdy...) ataki XSS poprzez formularze.
- Dodane: 11.07.2008 przez riklaunim