Kamis, 10 Juni 2010

PENGANTAR TEKNOLOGI WEB 5

PENGANTAR TEKNOLOGI WEB 5

Server-Side Technologies

Server Side Technologies

• Hardware:

– Server

• Software:

– Web server

– Server side Programming Tools

– Utility Programming Tools

– Database Server

Komponen Web

Mapping URL Sistem Web

Web Server vs Web Application

• Web Application:

– Menggunakan bahasa Pemprograman(misal ASP, PHP, Java, .Net, Perl atau .NET)

• Web Server:

– Melayani permintaan client dan meneruskan ke aplikasi yang sesuai selanjutnya diproses oleh aplikasi yang sesuai (misal IIS, Apache, thttpd dll.)

• Web Application tidak bisa jalan tanpa Web Server

• Web Server bisa bekerja tanpa Web Application (Tapi hanya bisa melayani web dengan content statis)


Web Server

• Web Server: apache, xitami, PWS, IIS

• Biasanya diinstall bersama dengan PHP dan MySQL => ApacheTriad

– Aplikasi free, ukuran cukup besar

– Tidak perlu konfigurasi

• Hanya perlu user & password apache dan MySQL

• Bisa diinstall di Linux (XAMPP) dan Windows (WAMPP)

http://www.apachefriends.org/en/xampp-windows.html

File Konfigurasi Web Server

• httpd.conf

• srm.conf

• access.conf

• Juga perlu setting:

– Virtual Host

Httpd.conf

• ServerType – berdiri sendiri / manual inetd.

• ServerRoot – directory konfigurasi.

• PidFile – nomor proses ID

• ResourceConfig / AccessConfig

• TimeOut – batas waktu time out.

• KeepAlive – simultan koneksi dari satu IP.

• MaxKeepAliveRequest – max. keep alive.

• KeepAliveTimeOut

Httpd.conf

• MinSpareServers & MaxSpareServers – jumlah server untuk server farm.

• StartServers – server di jalankan.

• MaxClients – jmlh koneksi simultan di server.

• MaxRequestsPerChild

• BindAddress – IP yang di tempelkan.

• Port – port yang di dengar Apache.

• User & Group – owner dari Apache Web.

• ServerAdmin – e-mail admin Web server.

Httpd.conf

• ServerName – nama server.

• ErrorLog

• LogLevel – level emerg, alert, crit, errors.

• CustomLog – catat akses client & virtual host.

• ServerSignature – dikirim saat file tidak ada.

• UserCanonicalName

• HostnameLookups – catat hostname akses.

srm.conf

• DocumentRoot – directory root HTML.

• UserDir – public_html, http://server/~user.

• DirectoryIndex – index file.

• FancyIndexing

• AccessFileName - .htaccess

• Alias – alias directory khusus, cgi-bin

• DefaultType – Default tipe dokumen

access.conf

Options FollowSymLinks

AllowOverride None

Options Indexes FollowSymLinks

AllowOverride None

Allow from all

Virtual Host – IP based

DocumentRoot /path/to/document

ServerName www.vhost1.com

Virtual Host – name based

NameVirtualHost 192.168.0.128

DocumentRoot /path/to/document1

ServerName www.vhost1.com

DocumentRoot /path/to/document2

ServerName www.vhost2.com

Susunan directory

• bin à file-file program

• build

• cgi-bin à script cgi

• conf à tempat konfigurasi

• error à error message

• htdocs à dokumen yang akan dipublish

• icons à gambar-gambar kecil

• include

• lib

• logs

• man à manual pages

• manual à dokumentasi

• modules à module

Server Side Programming

• Bahasa: PHP, ASP classic, ColdFusion, ASP.NET, JSP / JSF, Ruby on Rails

• PHP: PHP Hypertext Preprocessors

• Gratis dari www.php.net

• Mirip dengan bhs Java dan C

• Bhs scripting yg paling populer

• Rasmus Lerdorf, Andi Gutmans, Zeev Suraski

How PHP works?

• User mengetikkan suatu alamat:

– http://www.example.com/login.php

• Dilakukan DNS – Routing

• Diterima oleh web server (mis: Apache)

• Karena merupakan script PHP, maka isi script PHP diparsing dan diproses oleh interpreter php, dan dikembalikan dalam bentuk teks HTML

• Teks HTML dikembalikan ke user dan ditampilkan di browser

Why is PHP used?

Why is PHP used?

2. Cross Platform

Runs on almost any Web server on several operating systems.
One of the strongest features is the wide range of supported databases

Web Servers: Apache, Microsoft IIS, Caudium, Netscape Enterprise Server

Operating Systems: UNIX (HP-UX,OpenBSD,Solaris,Linux), Mac OSX, Windows NT/98/2000/XP/2003

Supported Databases: Adabas D, dBase,Empress, FilePro (read-only), Hyperwave,IBM DB2, Informix, Ingres, InterBase, FrontBase, mSQL, Direct MS-SQL, MySQL, ODBC, Oracle (OCI7 and OCI8), Ovrimos, PostgreSQL, SQLite, Solid, Sybase, Velocis,Unix dbm

Why is PHP used?

3. Cost Benefits

PHP is free. Open source code means that the entire PHP community will contribute towards bug fixes. There are several add-on technologies (libraries) for PHP that are also free.

PHP

Software

Free

Platform

Free (Linux)

Development Tools

Free

PHP Coder, jEdit


Dukungan PHP

Arsitektur PHP 4

PHP Script

PHP syntax

Komentar

• Tanda //,digunakan untuk komentar satu baris

• Tanda /* dan */, digunakan untuk mengawali dan mengakhiri komentar

• Tanda #, digunakan untuk komentar satu baris

Tipe Data

• Tipe Skalar:

– boolean

– integer

– floating-point number (float)

– string

• Tipe Compound:

– array

– object

• Tipe Special:

– NULL

• Tipe Boolean:

– TRUE / FALSE

Tipe Data Numerik

• Numerik Bulat

• Desimal (base-10)

• Oktal (base-8, diawali 0 [nol])

• Hexadesimal (base-16, diawali 0x [nol x])

• Lebar 32 bit

Tipe Data Float

• Angka Desimal

• Lebar 64 bit

• Maksimum ~1.8e308

• Presisi 14

Tipe String

• Gabungan Karakter

• Single Quote

• Double Quote

• Heredoc Syntax

Konstanta

define(“USERNAME”,”Antonie”);

echo “User Name :”.USERNAME;

?>

Deklarasi Variabel

Konversi String ke Angka

• Contoh:

– $a = 1 + “10.5”;

– $a = 1 + “-1.3e3”;

– $a = 1 + “bob-1.3e3”;

– $a = 1 + “bob3”;

– $a = 1 + “10 ayam kate”;

– $a = 1 + “10.2 ayam kate”;

– $a = “10.0 ayam” + 1;

Operator

• Arithmetic (+, -, *, /)

• Concatenation (.)

• Assigment(+=, -=, /=, *=, %=, .=)

• Comparison (==, !=, >, <, >=, <=)

• Logical (||, &&, !)

If syntax

Switch

While

For

Break

Continue

Array

Custom Array

• Contoh pembuatan array dengan custom key

// This array is the same as ...

array(5 => 43, 32, 56, "b" => 12);

// ...this array

array(5 => 43, 6 => 32, 7 => 56, "b" => 12);

?>

• Size of array is not defined

• If you add a new element the maximum of the integer indices is taken, and the new key will be that maximum value + 1


While-list

Foreach (1)

$arr = array("one", "two", "three");

reset($arr);

while (list($key, $value) = each ($arr)) {

echo "Key: $key; Value: $value
\n";

}

foreach ($arr as $key => $value) {

echo "Key: $key; Value: $value
\n";

}

?>

Foreach (2)

$arr = array("one", "two", "three");

reset ($arr);

while (list(, $value) = each ($arr)) {

echo "Value: $value
\n";

}

foreach ($arr as $value) {

echo "Value: $value
\n";

}

?>

Fungsi-fungsi dalam array

Contoh

$city[0]="Jogja";

$city[1]="Bandung";

$city[3]="Surabaya";

$strgabung = implode("-",$city);

echo "Stlh digabung: ".$strgabung."
";

$cityarray = explode("-",$strgabung);

foreach ($cityarray as $key=>$value){

echo "Array ke-".$key." = ".$value."
";

}

?>

Null

• NULL menyatakan variabel yang tidak ada nilainya

• Sebuah variabel NULL, jika

– Dinyatakan sebagai NULL dengan opertor =

– Belum pernah diberikan suatu nilai literal

– Telah di unset()

• Untuk mengecek apakah variabel NULL atau tidak, dapat digunakan fungsi is_null()

Unset dan Bracket

function


Array Global

• $_GET[“varname”]

• $_POST[“varname”]

• $_SESSION[“varname”]

• $_COOKIE[“varname”]

• $_REQUEST[“varname”]

• $_FILES[“varname”]

Session

• session_start() //dipaling atas

• session_register()

• session_unregister(

• if (session_is_registered())

• unset()

• session_destroy()

File Upload

• If(copy(source, destination))

SERVER variable

• $_SERVER is an array containing information such as

– Headers

– Paths

– Script locations

• The entries in this array are created by the webserver. There is no guarantee that every webserver will provide any of these; servers may omit some, or provide others

Contoh

Server Variable

• 'argv'

– Array of arguments passed to the script. When the script is run on the command line, this gives C-style access to the command line parameters. When called via the GET method, this will contain the query string.

• 'argc'

– Contains the number of command line parameters passed to the script (if run on the command line).

SERVER variable

• 'REMOTE_ADDR'

– The IP address from which the user is viewing the current page.

• 'REMOTE_HOST'

– The Host name from which the user is viewing the current page. The reverse dns lookup is based off the REMOTE_ADDR of the user.

• 'REMOTE_PORT'

– The port being used on the user's machine to communicate with the web server.

• $_COOKIE

– An associative array of variables passed to the current script via HTTP cookies. Automatically global in any scope.

• $_POST

An associative array of variables passed to the current script via the HTTP POST method.

Tidak ada komentar:

Posting Komentar