Tanítás, webfejlesztés, programozás, informatika, rock zene

A PHP alkalmazások régi problémája az, hogy a PHP-ban írt programot nem igazán lehet leédni, ugyanis a nyelv működési módjából adódóan a forráskód nyílt ASCII vagy más kódolású szöveg.

A minap egy PHP-ban írt alkalmazást kellett áttelepítenem egy korábban általam felügyelt környezetből, egy másik környezetre, amelynek a felügyeletét már nem én látom el. Az alkalmazást én írtam. Mind az eredeti, mind az új környezet Windows Szerver, és MS SQL adatbázis kezelőt jelentett.

A különbségek a két környezet között az alábbiak voltak:

Eredetileg: Standalone XP, Apache 2.0.x, MS SQL 2000, PHP 5.2.4, Modul üzemmódban

Új környezet: Windows 2003 Server, IIS 6, MS SQL 2005 és végül PHP 5.3.2. FastCGI üzemmódban

Ami simán ment:

A memcached olyan alkalmazás, amellyel PHP adatokat lehet tárolni memóriában a szerveren. Jól használható például SESSIONOK adatainak kezeléséhez. Telepítése:

A memcached-t eredetileg Linux alá fejlesztették, de van hozzá Win32 verzió is. Önálló szervízként fut majd a szerveren megfelelő jogosultságokkal.

Telepítése:

A PHC-WIN fordító szintén egy PHP To Exe fordítóprogram keretrendszer. Tulajdonságai:

Az előző oldalon megtanultuk, hogyan lehet egyáltalán EXE fájlt készíteni. most megnézzük, hogyan lesz ablakozós a program.

Az ablakozó programok két részből állnak:

1. Definiálni kell az ablakokat és meg kell jeleníteni azokat

2. Az ablakokkal történő eseményeket fel kell dolgozni.

A Windowsos alkalmazás elkészítéséhez be kell ágyazni a winbinder.php-t

include("include/winbinder.php");

A windowsos programok ablakozó rendszerét létre kell hozni

Az alábbiakban PHP kód EXE programmá fordításáról lesz szó.

Bambalam Compiler

Tulajdonságai

Később ezt a területet kifejtem. Addig is itt egy angol nyelvű site linkje, ahol sok mindent lehet erről a témáról megtudni:http://phpsec.org/projects/

A PHP biztonság általánosan a szoftverek biztonságának részeként is vizsgálható, de itt most nem ez a cél.

Kimondható, hogy teljesen biztonságos szoftvert nem lehet készíteni, de törekedni kell rá.

Milyen területei vannak a PHP biztonságnak az alábbiakban taglaljuk.

A PHP kézikönyvben részuletes angol nyelvű leírások vannak a különböző biztonsági területekről

A PHP 5.x.x-től kezdődően a Mysql nem a default adatbáziskezelő a PHP-hoz,és már nincs beépítve a rendszerbe, külön kell telepíteni.
A telepítés kulcsmomentuma az, hogy a libmysql.dll-t is el kell érnie a PHP-nak induláskor.

A telepítés lépései:

Feltételes beillesztés

Gyakori programozói probléma, hogy egy több oldalból álló site minden oldalán minden szokásos fájl beinclude-olunk, még akkor is, ha nincs rá éppen szükség. Ha másképp nem nézzük meg a futások során, hogy milyen feltételek kellenek ahhoz, hogy egy fájlt beillesszünk a programba és csak ekkor illesszük be.

Probléma: Gyakori probléma az, hogy a sessionkezelés nem indul el egy UTF-8 kódolású lapon.

A nagykönyv azt mondja, hogy minden HTTP headernek még azelőtt kell kimennie a szerverről, hogy más HTML tartalmat kiíratunk.
HTTP headert írnak PHP esetén az alábbi függvények:

setcookie()
header()
session_start()

A használatuk - tetszőleges sorrendben tehát így néz ki: