SQLite 7.díl, rady a tipy

Napsal O webu (») 7. 12. 2007 v kategorii Databáze, přečteno: 3220×
obrazky/sqlite_logo.pngDatabázi SQLite můžete používat na webhostingu banan.cz.

.htaccess


Komentáře v .htaccess souborech se uvazují znakem #.

Ochrana vašic SQLite databází před stáhnutím

Pokud máte vaši SQLiet databázi umístěnou v adresáři, který je běžně viditelný na webu mohl by případný utočník snadno vaše data získat. Zkusme si tedy ukázat co může soubro .htaccess obsahovat aby zabránil takovému to prostému útoku.

# Zakázaní přístupu k sqlite souborum, pomocí jejich koncovek
<FilesMatch "\.(sqlite|sqlite2|sqlite3|sq|sq2|sq3)$">
Deny from all
</FilesMatch>


Umístění SQLite souboru


Protoze SQLite databaze je jen prostý soubor je potřeba si dobře rozmyslet kam soubor umístíme, jednou z možností je umístit soubro někom mimo webové adresáře.


Následující dva příklady nám ukazují jak vytvořit databázi právě v takovém adresáři pomoci PDO zápisu.

// soubor umístěn ve webovém prostoru
$db = new PDO('sqlite:'.$_SERVER['DOCUMENT_ROOT'].'/../database.sqlite3');

// databáze umístěna v adresáři temp
$db = new PDO('sqlite:/home/www/domena.tld/tmp/database.sqlite3');


Od verze 3.1 SQL lite podporuje auto_vacuumwhich vyčíští vaší databázi po používání. Je důležité aby jste nejprve smazali všechny tabulky, auto_vacuumwhich vyčistí použe reziduální relace.

PRAGMA auto_vacuum = 1;

Pojistěte se že máte dobře nastavené kódování

PRAGMA encoding = "UTF-8";

Perzistentní připojení


Perzistetní připojení pro SQLite má smysl umožnuje snižovat zátěž disku.

SQLite2 :

sqlite_popen('/database.sqlite2');
// nebo
PDO('sqlite2:/database.sqlite2', null, null, array(PDO::ATTR_PERSISTENT => true));


SQLite3 :

PDO('sqlite:/database.sqlite3', null, null, array(PDO::ATTR_PERSISTENT => true));


Autor: Filip Koval
Štítky: SQLite
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel šest a devět