Professional Documents
Culture Documents
VERSIYON 1.0.3
%X\DSVLOHSURMHND\QDNNRGXDoNYHWDPDPHQFUHWVL]ELU\D]OPROPDVQDUDPHQ*3/
/LVDQV1 LOH NRUXQPDNWD YH OLVDQVWD DoNoD EHOLUWLOHQ HNLOOHUGH GDWP \DSODELOPHNWHGLU
6DODQODQEXGRNPDQWDV\RQGDVLVWHPLD\UQWORODUDNWDQPODPDNWDYHDoNODPDNWDGU
1
Bkz : Ek F *3/ /LVDQV 6|]OHPHVL - Richard Stallman
*LUL
g]HOOLNOH VRQ \HGL \OGD NXOODQP oRN K]O ELU HNLOGH DUWDQ ,QWHUQHW EX NRQX\D HO DWP
E\N ILUPDODU YH G ONHOHULQ 7UNL\H ]HULQGHNL WHNQRORMLN EDVNODU VD\HVLQGH WDQQDQ YH
NXOODQODQ ELU RUWDP GDKD oRN ELU PHFEXUL\HW KDOLQH JHOPLWLU 7HNQRORMLGHNL EX K]O
JHOLPH\H D\DN X\GXUPDN LVWH\HQ SHN oRN NLL VLVWHPH GDKLO ROPDN \D GD HQ D]QGDQ
kartvizitinde e-mail adresinin grnmesini istemektedir..XOODQFODUQ
QQVDGHFHEHOLUOL
X\JXODPDODU NXOODQDELOGLNOHUL GQOUVH H-PDLO DOPD YH J|QGHUPH LOHPLQLQ 2XWORRN
([SUHVV 1HWVFDSH 0DVVHQJHU .PDLO %HPDLO JLEL PDVDVW \D]OPODU LOH \DSOPDV NLPL
\HQL NXOODQFODU WDUDIQGDQ oRN ]RU \D GD LPNDQV] RODUDN QLWHOHQGLULOPHNWHGLU 3HN oRN
X]PDQ NXOODQF LVH VH\DKDW KDOLQGH\NHQ H-PDLOODUQD NROD\FD XODDELOHFHNOHUL ELU ZHE DUD
\] LVWHPHNWHGLU %DKVHGLOHQ VHEHSOHUGHQ GROD\ PDLO-!ZHE JDWHZD\ \D]OPODU <DKRR
Altavista, Hotmail gibi dnya devi ILUPDODU WDUDIQGDQ NXOODQOPDNWD YH NXOODQFODU VHUYLV
VDOD\FODUQGDQEXKL]PHWLEHNOHPHNWHGLU
$QDOL] YH WDVDUP oDOPDODU VRQXFXQGD HOGH HGLOHQ YHULOHU GRUXOWXVXQGD VLVWHP
ROXWXUXOPXYHNRGODQPDVLoLQRUWDPDUDWUPDODUQDEDODQPWU%XQXn iin seilen ortam
oRNNXOODQFOYHoRNLOHPOLELURUWDPROPDOGU6LVWHPLQ,QWHUQHW]HULQGHKL]PHWYHUPHVL
VHoLOHFHN SODWIRUPXQ ,QWHUQHWYH\HUHODGHVWHLVXQPD|]HOOLNOHULQLWDPDV]RUXQOXOXXQX
JHWLUPLWLU
/LQX[ JLEL NXOODQP JLWWLNoH \D\JQODDQ VWDELO YH JHOLPH\H DoN ELU VLVWHP ]HULQGH
JHUoHNOHWLULOHQ EX SURMH \LQH /LQX[ LoLQ JHOLWLULOPL 0\64/ DGO YHULWDEDQ \D]OPQ
NXOODQPDNWDGU .XOODQODQ :HE VXQXFX \D]OP \LQH 81,; VLVWHPOHU LoLQ JHOLWLULOPL YH
GQ\DGD RUDQQGD NXOODQODQ $SDFKH :HE VXQXFX \D]OPGU $VOQGD SURJUDPQ ZHE
VXQXFX EDPOO EXOXQPDPDNWD ROXS 3+3 \H GHVWHN YHUHQ =HXV 5R[HQ ,,6 3:6 JLEL
EWQZHEVXQXFXODUGDWHRULNWHoDOPDVPPNQGU323VXQXFXRODUDN\LQHGQ\DQQHQ
popler POP3 sunucX \D]OP RODQ 4SRSSHU YH 07$ RODUDNGDELUVWDQGDUWRODQ6HQGPDLO
NXOODQOPWU 3URJUDP EX LNL ELOHHQH GH EDPO ROPD\S 5)& VWDQGDUWODUQD uygun
KHUKDQJLELU323YH07$\D]OP\ODoDODELOLU
<D]OPQNXUXOGXXVXQXFXGDNXOODQFODUQHQ|]HOELOJLOHULQLQGH\HUDODELOHFHLH-PDLOODU
WXWXOPDNWD YH EXQD ELU DUD\] JHOLWLULOPHVL WHPHO DPDo ROGXX LoLQ EX VXQXFXQXQ KDFNHU
VDOGUODUQGDQ NRUXQPDV NXOODQFODUQ PDKUHPL\HWL DoVQGDQ oRN |QHPOL ROPDNWDGU
Sunucu zerinde biU ILUHZDOO \D]OP JHOLWLULOPHVL GH PHFEXUL ELU XQVXUGXU %X DPDoOD
KHPHQ KHPHQ EWQ /LQX[ VUPOHUL LOH EHUDEHU JHOHQ LSFKDLQV DGO SRUW ILOWUHOHPH YH
\|QOHQGLUPH SURJUDP NXOODQOPWU .XOODQODQ ILUHZDOO XQ NRGX LVH (N ' GH
EXOXQPDNWDGU
YukarGD EDKVHGLOHQ ELOHHQOHUGHQ ROXDQ VLVWHP JHUHN \HUHO DODU LoLQ JHUHNVH ,QWHUQHW
X\JXODPDODU LoLQ JD\HW X\JXQ YH JYHQOL ELU RUWDP ROXWXUPDNWDGU 6LVWHP ELOHHQOHUL
ND\QDNNRGODUDoNYHDODQODUQGDNHQGLOHULQLLVSDWODPGHQHQPL\D]OPODUGU
%LUELUOHUL\OH X\XPOX ROPD ]RUXQOXOXX WD\DQ EX \D]OPODU DUDVQGDNL X\XP YH ELUOLNWH
oDODELOLUOLNEXYHEHQ]HULSURMHOHUGHKD\DWL|QHPWDU%XX\XPXVDODPDNDPDF\ODSURMH
VUHVLQFH SHN oRN GHQHPH YH DUDWUPD \DSOPWU (Q X\JXQ RUWDP ]HULQGH, en verimli
HNLOGHVLVWHPLQoDOPDVKHGHIOHQPLWLU
2. Materyal
OHWLP6LVWHPL5HG+DW*18/LQX[
Linux VHUEHVWoH GDWODELOHQ oRN J|UHYOL oRN NXOODQFO 81,; LOHWLP VLVWHPi trevidir.
/LQX[ ,QWHUQHW ]HULQGH LOJLOL YH PHUDNO ELUoRN NLL WDUDIQGDQ RUWDN RODUDN JHOLWLULOPHNWH
RODQYHEDWD,%0-3&X\XPOXNLLVHOELOJLVD\DUODUROPDN]HUHELUoRNSODWIRUPGDoDODELOHQ
YHKHUKDQJLELUPDOL\HWLROPD\DQELULOHWLPVLVWHPLGLU
UNIX
OL\OODUQRUWDODUQGDE\NELOJLVD\DUODU]HULQGHoRNNXOODQFOELULOHWLPVLVWHPL
RODUDNJHOLWLULOPLWLU=DPDQLoHULVLQGH\D\OPYHELUoRNWUHYLRUWD\DoNPWU81,;LVPL
81,;5HVHDUFK/DERUDWRULHV,1&LUNHWLQLQWHVFLOOLPDUNDVROGXXQGDQGROD\ELUoRNLUNHW
D\QWHPHOHGD\DQDQLOHWLPVLVWHPOHULLoLQGHLLNLVLPOHUNXOODQDJHOPLOHUGLUgUQHNRODUDN
Hewlett-Packard; HP-UX
IBM; AIX
Sun Microsystems; SUN OS
.XUXODFDN6LVWHPLQ$oOPDV
%LOJLVD\DU&'GHQDoOUDoOPD]DDGDNLHNUDQLOHNDUODOU
%XDoOHNUDQQGDQLWLEDUHQ\DSODELOHFHNOHUXQODUGU
.XUXOXPLoLQGHLLN\|QWHPOHUEHOLUOHPHN
)RQNVL\RQWXODUQNXOODQDUDNGHLLNNXUXOXPPHWRWODUKDNNQGDELOJLDOPDN
$\UFDNXUXOXRODQ/LQX[VLVWHPLYDUYHDoOP\RUVDEXQODUG]HOWPHN
RODELOLU%XHNUDQGDNXUXOXPDEDODPDNLoLQ(QWHUWXXQDEDVOU
/LQX[ELUGHQoRNVDQDOHNUDQGHVWHNOHU+HUELUVDQDOHNUDQJ|UHELOPHNLoLQ$OWWXXYHELU
klavye zerinden F1-) DUDVQGD ELU WXD EDVODELOLU 6LVWHP YDUVD\ODQ RODUDN $OW)
NRPELQDV\RQXLOHJHOHQWW\DGOWHUPLQDOJ|UQWOHQHFHNWLU.XUXOXPVUDVQGDGLHUHNUDQODU
PHVDMODUJ|VWHUPHNLoLQNXOODQOPDNWDGU
.XUXOXP EDODGNWDQ VRQUD LON RODUDN HNUDQ NDUWQ WDQPD\D oDODFDNWU %XQXQ DPDF 5HG
+DW Q VUPQGHQ LWLEDUHQ JUDILN RUWDPGD NXUXOXPX GHVWHNOHPHVL YH GRDO Rlarak da
GHVWHNOHQHQELUHNUDQNDUWQDLKWL\DoGX\PDVGU
*UDILNRUWDPDoOGNWDQVRQUDLONRODUDNGLOVHoLPL\DSOPDVLVWHQPHNWHGLU$DGDGLOVHoLP
HNUDQJ|UOPHNWHGLU
2.1.2.2 Klavye Seimi
$DGDNLHNUDQGDJ|UOGJLELWXOXVWDQGDUWNODY\HG]HQLYEVHoHQHNOHUVHoLOHUHN
1H[WWXXLOHELUVRQUDNLHNUDQDJHoLOLU
)DUH$\DUODU
Bir sonraki seim, sistemdeki IDUH oHLGLQLQ EHOLUOHQPHVLGLU /LVWHGH EWQ IDUH oHLWOHUL
PHYFXWROXSHQX\JXQRODQVHoHQHNLDUHWOHQPHOLGLU
.XUXOXPD%DODQPDV
%XDDPD\DNDGDURODQDGPODUVLVWHPLQHQWHPHOGRQDQP|]HOOLNOHULQLQEHOLUOHQPHVLDPDoO
LGL%XDDPDGDQVRQUDNXUXODFDNRODQSDNHWOHUVHoLOHFHNYHVDELWGLVNHNRS\DODQDFDNWU
2.1.2.5 Kurulum Seenekleri
5HG+DW/LQX[NXUXOXPLOHPLQLNROD\ODWUPDNDPDFLOH*QRPHVWHPFL.'(LVWHPFLJLEL
KD]UVHoHQHNOHULOHJHOLU
*QRPHVWHPFLVHoHQHLPDNLQHQLQELUPDVDVWELOJLVD\DURODUDNNXOODQODFDQGQHUHN
ELU HY NXOODQFVQQ LKWL\Do GX\DFD ELOHHQOHUL \NOHU (Q EHOLUJLQ |]HOOLL LVH /LQX[ XQ
standart arayzlerinden Gnome yklenmesidir.
.'( VWHPFL VLVWHP LVH D\QHQ *QRPH JLEL ELU HY NXOODQFVQD KLWDS HGHUNHQ ; :LQGRZV
arayz olarak Gnome yerine KDE yi ykler.
6HUYHUVHoHQHLELOJLVD\DUJYHQOLELUVXQXFXROPDN]HUHVDGHFHJHUHNOLELOHHQOHULOHNXUDU
6XQXFXODU LoLQ \D]ODQ \D]OPODU oRN oHLWOL WHVWOHUGHQ JHoWLL YH /LQX[ XQ HQ \D\JQ
NXOODQOGDODQROGXXLoLQVRQGHUHFHJYHQOLGLU
&XVWRP VHoHQHL YDUVD\ODQ D\DUODPDODUGDQ KHUKDQJL ELULVLQL X\JXQ J|UPH\HQ YH VDGHFH
LVWHGLLSDNHWOHUL\NOHPHNLVWH\HQX]PDQNXOODQFODULoLQX\JXQELUo|]PGU
Gncelleme seenHL LVH HVNL ELU YHUVL\RQ 5HG +DW EXOXQDQ PDNLQHOHUGH KHUKDQJL ELU
\HGHNOHPHJHUHNWLUPHGHQVLVWHPL\HQLVUPHJQFHOOHPHNLoLQNXOODQOU
3RVWDF LoLQ NXUXODQ VLVWHP VXQXFX DPDoO NXOODQODFD LoLQ HQ X\JXQ VHoHQHN 6XQXFX
RODFDNWU
3DNHWOHULQ.XUXOPDV
%LU |QFHNL HNUDQGD 6XQXFX VHoHQHL VHoLOGLL LoLQ .XUXOXP 3URJUDP VXQXFX ]HULQGHNL
SDUWLV\RQ D\DUODPDODUQ YH IRUPDWODPD\ NHQGLVL \DSDFDN YH DUGQGDQ GD EX VHoHQHN LoLQ
YDUVD\ODQJHOHQSDNHWOHUL\NOHPH\HEDOD\DFDNWU
*18YHg]JU<D]OP
g]JU\D]OPQWHPHOLQGHNXOODQFQQELU\D]OPoDOWUPDNRS\DODPDGDWPDLQFHOHPH
GHLWLUPH YH JHOLWLUPH |]JUONOHUL \DWDU 'DKD NHVLQ YH DoN ELU LIDGH\OH NXOODQFODUD X
KDNODUWDQQPWU
+HUWXUOXDPDoLoLQSURJUDPoDOWUPD|]JUO
3URJUDPQQDVOoDOWQLQFHOHPHYHNHQGLJHUHNVLQLPOHULGRUXOWXVXQGDGHLWLUPH
|]JUO
3URJUDPND\QDNNRGXQDHULLPEXQXQLoLQELU|QDUWWU
<HQLGHQGDWPDYHWRSOXPODSD\ODPD|]JUO
3URJUDPJHOLWLUPHYHJHOLPLKDOL\OHWRSOXPDGDWPD|]JUO
%|\OHFH \D]OP EWQ WRSOXP \DUDUQD JHOLWLULOPL ROXU. Program kaynak koduna
HULLPEXQXQLoLQGHELU|QDUWWU
%LUSURJUDPEWQNXOODQFODUEXKDNODUQWPQHVDKLSROGXNODU]DPDQ|]JUELU\D]OP
ROXU <DQL NRS\DODPD GHLWLUPH D\QHQ \DGD GHLWLUHUHN SDUD\OD VDWPD KHUNHVH YH KHU
\HUGHGDWPDEHGDYDYHUPH|]JUONOHULQHVDKLSROPDOVQ]%X|]JUONOHUHVDKLSROPDN
NLPVHGHQL]LQDOPDPD\YHL]LQLoLQKLoELUEHGHO|GHPHPH\LGHLoHULU
$\UFD SURJUDPGD KHU WUO GHLLNOLN \DSODELOLU YH EX KDOL\OH LWH YH\D HOHQFH DPDoO
NXOODQOPD\D GD RODQDN WDQU +DWWD EX GHLLNOLNOHULQ YDUOQQ NLPVH\H ELOGLULOPHVL
]RUXQOXOXXQX GD JHUHNWLUPH] 'HLLNOLNOHULQ \D\QODQPDV YH\D GDWOPDV KDOLQGH GH KLo
NLPVH\HKLoELUH\ELOGLULOPHVLJHUHNOLGHLOGLU
*HOLWLUPH YH GDWPD |]JUONOHULQLQ DQODPO ROPDV LoLQ SURJUDPQ ND\QDN NRGXQD
HULHELOPHVL JHUHNLU %X QHGHQOH ND\QDN NRGXQXQ DoN YH NROD\ HULLOHELOLU ROPDV |]JU
\D]OPLoLQJHUHNOLELUDUWWU
$QFDN |]JU \D]OPQ GDWPQGD ED] NXUDOODU NRQPDV GD RODQDNOGU %X NXUDOODUQ
yukarGD EHOLUWLOHQ WHPHO |]JUONOHUOH oHOLPHPHVL JHUHNLU gUQHLQ CCFRS\OHIW
NDYUDP
EDVLWoH V|\OH\HFHN ROXUVDN X NXUDO NR\DU 3URJUDP KHUKDQJL ELU ELoLPGH GDWUNHQ
NXOODQFODUQ WHPHO |]JUONOHUL NVWODQDPD] $oNoD J|UOG JLEL EX NXUDO WHPel
|]JUONOHUOHoHOLPHPHNWHWDPWHUVLQHRQODUNRUXPDNWDGU
'HLWLULOPL ELU SURJUDPQ SDNHWOHQPHVL NRQXVXQGD GD ED] NXUDOODU NRQDELOLU $QFDN EX
NXUDOODU GHLLNOLNOHUL YH GDWP HQJHOOH\HFHN ELoLPOHUH EUQHPH] $\UFD 3URJUDP EX
HNLOGH GDWOUVD X HNLOGH GH GDWP VDODQPDOGU WUQGH NXUDOODU GD X\JXQ RODELOLU
$\QWHPHOLONHOHUEXGXUXPGDGDJHoHUOLGLU'LNNDWHGLOPHVLJHUHNHQELUQRNWDGDSURJUDPQ
KLoGDWOPDPDVNRQXVXQGDWDQQDQ|]JUONWU
Gnmzde vHULWDEDQ KHU LQVDQQ \DDPQQ ELU SDUoDV ROPXWXU 9HULWDEDQ NDYUDP
ROPDGDQ \DSODQ KHU L oRN FDQ VNF ELU GXUXP DOPDNWD YH KDWWD ED] LOHUL \DSPDN
RODQDNV] KDOH JHOPHNWHGLU %DQNDODU QLYHUVLWHOHU YH NWSKDQHOHU YHULWDEDQ VLVWHPOHULQH
\RXQ RODUDN EDO RODQ RUJDQL]DV\RQODUD |UQHN RODUDN J|VWHULOHELOLU ,QWHUQHW
WH LVH DUDPD
PRWRUODU RQOLQH DOYHUL YH KDWWD ZHE VLWHVL LVLPOHQGLUPH NXUDOODU ZHEVLWH QDPLQJ
FRQYHQWLRQKWWSZZZELUYHULWDEDQROPDGDQLPNDQV]KDOHJHOPHNWHGLU Bir bilgisayar
]HULQGHJHUoHNOHWLULOHQYHDUD\]HGLOHQELUYHULWDEDQQDYHULWDEDQVXQXFXVXDGYHULOLU
64/ 6WUXFWXUHG 4XHU\ /DQJXDJH X DQ GQ\DGDNL HQ SRSOHU YH VWDQGDUWODP ELU
YHULWDEDQ GLOLGLU 3D]DUGDNL K]O 64/ YHULWDEDQ VXQXFXODUQGan birisi de, T.c.X. Data
.RQVXOW $% WDUDIQGDQ JHOLWLULOHQ PXOWL-user ve multi-threaded zelliklerine sahip MySQL'
GLU 0\64/ ELU VXQXFX GDHPRQ RODQ P\VTOG YH oRN VD\GD IDUNO LVWHPFL SURJUDP YH
NWSKDQHOHULLoHUHQELULVWHPFLVXQXFXJHUoHNOHWLULPLGLU0\64/WLFDULYH|]HONXOODQPODU
LoLQ FUHWVL]GLU 0\64/ LOH KD]UODQDQ EX X\JXODPDODU JHOLWLUPHN LoLQ 0\64/
LQ OLVDQV
E|OPQHEDNOPDVJHUHNLU
0\64/
LQ WHPHO DYDQWDMODU K] JF YH NXOODQP NROD\OGU 0\64/
LQ JHOLWLULOPH
nedeni geroHNWHXFX]GRQDQP]HULQGHGLHUYHULWDEDQVDWFODUQGDQGDKDK]OELUHNLOGH
E\NYHULWDEDQODULOHEDDoNDELOHFHNELU64/VXQXFX\DGX\XODQLKWL\DoWU
0\64/
LQ WHPHOL \OODUGU UHWLP oHYUHVLQGH \NVHN RUDQGD WDOHS J|UHQ ELU GL]L \RUGDPD
GD\DQPDNWDGU +DOD JHOLWLUPH DOWQGD ROPDVQD UDPHQ 0\64/ ]HQJLQ YH oRN \DUDUO ELU
IRQNVL\RQNPHVLVXQPDNWDGU
$PDPXKWHPHOHQHQLOJLQo|]HOOLL0\64/
LQFUHWVL]ROPDVGU7F;0\64/
LKHUNHVH
DoNFUHWVL]ELUUQRODUDNVXQDU2]DPDQ0\64/
LNLPOHUNXOODQ\RU"
%XYHULWDEDQVXQXFXDQRQLPLUNHWoHYUHOHULQGHE\NWDOHSJ|UPWU%XQODUGDQED]ODU
'DKDE\NELUNXOODQFOLVWHVLQH0\64/NXOODQFOLVWHVLQGHQXODODELOLU
+D]UODQPRODQEXSURMHGH0\64/NXOODQODQEDONODUXHNLOGHVUDODQDELOLU
Sanal e-PDLOGL]LQOHULROXWXUPDYHH-mail saklama
Adres Defteri
Not Defteri
Bookmark yneticisi
6DQDODODQDG\|QHWLPL
.XOODQF%LOJLOHUL
Ka\W'RV\DODU
2.3 Apache Sunucu
$SDFKH ND\QDN NRGX DoN ELU FUHWVL] ZHE VXQXFX \D]OPGU 6WDELO VUP RODQ [
/LQX[ 6RODULV 'LJLWDO 8QL[ $,; JLEL SHN oRN 8QL[ WDEDQO VLVWHPH YH 8QL[326,;
WHQ
WUHPL 5KDSVRG\ %H26 %626' JLEL 8QL[326,;
GHQ WUHPL VLVWHPOHUH GH GHVWHN
YHUPHNWHGLU$\UFD$PLJD26YHGHVWHNYHULOPHVHGH:LQGRZV[17YHUVL\RQODUGD
mevcuttur.
'Q\D ]HULQGH NXOODQODQ ZHE VXQXFXODUQQ UHVPL LVWDWLVWLLQL \DSDQ ELU NXUXOX RODQ
1HWFUDIW
Q KWWSZZZQHWFUDIWFRP
WH \DSW DUDWUPD\D J|UH GQ\D ]HULQGH
$SDFKH
QLQ NXOODQP QLQ ]HULQGHGLU 0LFURVRIW WDEDQO VLVWHPOHU JLWWLNoH SRSOHU
ROPDVQDUDPHQ\LQHGH$SDFKH
QLQSRSODULWHVLQLHQJHOOHPHPHNWHGLU
Apache' nLQ VRQ YHUVL\RQX KDNNQGD ELOJL KWWSZZZDSDFKHRUJ DGUHVLQGHNL $SDFKH ZHE
VXQXFXGD EXOXQDELOLU X DQGDNL \D\P YH JHoPL EHWD-WHVW \D\PODU PLUURU ZHE YH IWS
VLWHOHUL LOH EHUDEHU EXUDGD OLVWHOHQPHNWHGLU dRX ]DPDQ HQ VRQ YHUVL\RQ $SDFKH EHNOHQGLi
kadar iyi sonu vermez. Yerine en son versiyon stabil srmn temin edilmesi sorunsuz ve
JYHQOLELUVXQXFXLoLQWHPHODUWWU
$SDFKH
QLQ GHUOHQPHVL o DGPGDQ ROXXU ON RODUDN VXQXFXGD EXOXQPDV LVWHQHQ $SDFKH
modlleULQLQ VHoLOPHVL JHUHNLU $UGQGDQ LOHWLP VLVWHPL LoLQ ELU D\DUODPD \DUDWOU 6RQ
RODUDNoDOWUODELOLUGRV\DGHUOHQLU
ASDFKH
QLQWPD\DUODPDV$SDFKH\D\PQQVUFGL]LQLQGH\DSOU
.XOODQODQLOHWLPVLVWHPLLoLQ$SDFKH
QLQNRQILJUDV\RQXQGDQRUPDOGHVDGHFHDDGDNL
&RQILJXUHEHWLPLQLQoDOWUOPDVJHUHNLU)DNDWEXEDDUV]ONODVRQXoODQUVDYH\DED]|]HO
JHUHNVLQLPOHUROXUVD|U3RVWDF3+3VX-exec modllerine gereksinim duyar) Configuration
GRV\DVQGD (;75$B&)/$*6 /,%6 /')/$*6 ,1&/8'(6 VHoHQHNOHUGHQ ELU YH\D GDKD
ID]ODVG]HQOHQPHOLGLU
&RQILJXUHEHWLPLQLoDOWUOQFDDDGDNLQHEHQ]HUELUoNWDOQU
% Configure
Using 'Configuration' as config file
+ configured for <whatever> platform
+ setting C compiler to <whatever> *
+ setting C compiler optimization-level to <whatever> *
+ Adding selected modules
+ doing sanity check on compiler and options
Creating Makefile in support
Creating Makefile in main
Creating Makefile in os/unix
Creating Makefile in modules/standard
%X EHWLP DGPGD NXOODQOPDN ]HUH ELU 0DNHILOH ROXWXUXU $\UFD VHoLPOL GHVWHN
SURJUDPODUQGHUOHQPHVLLoLQGHGHVWHNGL]LQLQGHELU0DNHILOH\DUDWU
PDNH\D]OU
'DKD VRQUD VXQXFX LoLQ FRQILJXUDWLRQ GRV\DODUQQ G]HQOHQPHVL JHUHNLU %X o PHUNH]L
FRQILJXUDWLRQ GRV\DVQD oHLWOL WDOLPDWODUQ NXUXOPDVQ NDSVDU VUPFRQI DFFHVVFRnf ve
KWWSGFRQI DGQGDNL EX GRV\DODU YDUVD\ODQ RODUDN FRQI GL]LQLQGH \HU DOU %DODUNHQ \DUGP
DPDF\ODGDWPQFRQIGL]LQLQGHEXGRV\DODUQD\QODUQGDQPHYFXWWXUYHLVLPOHULVUPFRQI-
dist, access.conf-dist ve httpd.conf-dist olarak gemektedir. -dist' siz olarak bu dosyalar
NRS\DODQDELOLU YH\D LVLPOHUL GHLWLULOHELOLU $UGQGDQ EX GRV\DODUQ KHU ELUL G]HQOHQLU %X
GRV\DODUQ GRUX ELU HNLOGH NXUXOPDPDV VXQXFXQXQ HPQL\HWVL] ROPDVQD \D GD
oDOPDPDVQGD \RO DoDELOLU FRQI GL]LQLQGHNL ELU GLHU GRV\D RODQ PLPHW\SHV GRV\DVQQ
JHQHOOLNOHG]HQOHQPH\HLKWL\DF\RNWXU
ONRODUDNKWWSGFRQIGRV\DVQG]HQOHQLU%XVXQXFXKDNNQGDNLJHQHOQLWHOLNOHULNXUDUSRUW
QXPDUDV oDOPDVQ VDOD\DQ NXOODQF YV $UGQGDQ VUPFRQI GRV\DVQ G]HQOHQLU; bu,
GRNPDQDDFQQN|NQVXQXFXWDUDIQGDQLOHQHQ+70/YH\DLoVHOLPDJHPDSLOHPHJLEL
|]HOIRQNVL\RQODUYVNXUDU6RQRODUDNHULLPLQHQWHPHOKDOLQLEHOLUOHPHNLoLQDFFHVVFRQI
GRV\DVG]HQOHQLU
%X o GRV\D\D HN RODUDN VXQXFXQXQ GDYUDQ VXQXFXQXQ HULWLL GL]LQOHUGHNL KWDFFHVV
GRV\DODUNXOODQODUDNELUGLUHFWRU\-by-GLUHFWRU\WHPHOL]HULQHNRQILJUDV\RQX\DSODELOLU
6LVWHPVDDWLQLQD\DUODQPDV
*HQHO ELU ZHE VXQXFXQXQ GRUX oDOPDV LoLQ ]DPDQ GRUX ELU HNLOGH NRUXPDV JHrekir.
dQN +773 SURWRNROQQ HOHPDQODU JQ FLQVLQGHQ LIDGH HGLOLU %XQGDQ GROD\ 8QL[
WH
173YH\DGLHUH]DPDQODPDVLVWHPOHULQLQNXUXOXPXQXQDUDWUOPDVJHUHNLU
6XQXFXQXQdDOWUOPDVYH6RQODQGUOPDV
+HU H\ \ROXQGD JLGHUVH EXQXQ DUGQGDQ NRPXW VDWU JHOHFHNWLU YH EX GXUXP VXQXFXQXQ
D\DNWD YH oDO\RU ROGXXQXQ ELU J|VWHUJHVLGLU 6XQXFXQXQ LQLWLDOL]DWLRQ
X VUHVLQFH ELU
H\OHU WHUV JLGHUVH HNUDQGD ELU KDWD PHVDM J|UQHFHNWLU 6XQXFX GRUX ELU HNLOGH EDODUVD
WDUD\F VXQXFX\D EDODQPD YH GRNPDQWDV\RQX RNXPD DPDoO NXOODQODELOLU (HU D\Q
PDNLQDGD VXQXFX RODUDN WDUD\F\ oDOWUO\RU YH QXPDUDO SRUW YDUVD\ODQ SRUW RODUDN
NXOODQO\RUVDWDUD\F\D\D]ODELOHFHNX\JXQELU85/KWWSORFDOKRVWHNOLQGHGLU
6XQXFX oDOPD\D EDODGQGD LVWHNOHUL \HULQH JHWLUHELOHFHN ELU GL]L FKLOG SURFHVV
OHU
\DUDWDFDNWU $SDFKH URRW NXOODQF RODUDN EDODWOUVD FKLOGUHQ KWWSGFRQI GRV\DVQGD
veULOHQHJ|UHNXOODQF\GHLWLULUNHQSDUHQWSURFHVVURRWRODUDNoDOPD\DGHYDPHGHFHNWLU
KWWSG oDOWUOGQGD ELU DGUHVH EDODQPDN ELQG WD EDDUV] ROX\RUVD \D $SDFKH
QLQ
NXOODQPDV LoLQ WDVDUODGQ] SRUWX EDND ELU SURFHVV NXOODQ\RUGXU ya da httpd normal bir
NXOODQF RODUDN oDOWUOPWU IDNDW
Q GDKD DDVQGDNL ELU SRUWX NXOODQPD\D
oDO\RUGXU|UQHLQYDUVD\ODQSRUW
Durmak iin, Apache parent process' e bir TERM sinyali gnderir. Bu process' in PID' si logs
GL]LQLQGHNL KWWSGSLG GRV\DVQD \D]OU EDND ELU HNLOGH FRQILJXUH HGLOPHGLL VUHFH FKLOG
SURFHVV
OHU |OGUOPH\H oDOOPDPDOGU dQN EXQODU SDUHQW WDUDIQGDQ \HQLOHQHFHNWLU
6XQXFX\XGXUGXUDFDNWLSLNELUNRPXWXHNLOGHGLU
$SDFKH NRPXW VDWU VHoHQHNOHUL FRQILJXUDWLRQ YH ND\W GRV\DODU KDNNQGD GDKD ID]OD ELOJL
iin 6WDUWLQJ $SDFKH
\H EDNODELOLU 'DWN PRGOOHU WDUDIQGDQ GHVWHNOHQHQ WP $SDFKH
WDOLPDWODULoLQELUUHIHUDQVNLWDE$SDFKHGLUHFWLYHV
WLU
'HVWHN3URJUDPODUQQ'HUOHQPHVL
6DQDO VXQXFX WHULPL ELUGHQ ID]OD VXQXFXQXQ J|UQUGHNL VXQXFX LVLPOHULQL IDUNOODWUDUDN
ELUPDNLQH]HULQGHEXOXQGXUXOPDVQGDQEDKVHGHUgUQHLQILUPDODULoLQELUZHEVXQXFX\X
VDKLS ROGXNODU DODQ DGODUQQ EXQODUD ZZZFRPSDQ\FRP ve www.company2.com olarak
NXOODQFQQHNVWUD\ROELOJLVLQHJHUHNGX\PDGDQXODDELOHFHLELUHNLOGHSD\ODWUOPDVDU]X
edilen bir durumdur. Apache, IP-WDEDQO VDQDO VXQXFXODU GHVWHNOH\HQ ZHE VXQXFXODUGDQ
biridLU $SDFKH
QLQ YH VRQUDNL YHUVL\RQODU KHP ,3-WDEDQO KHP GH LVLP-WDEDQO VDQDO
VXQXFXODU YKRVWV
ODU GHVWHNOHU 6DQDO VXQXFXODUQ VRQUDNL GHLLN HNLOOHUL ED]HQ LVLP-
WDEDQOYH\D,3WDEDQOROPD\DQVDQDOVXQXFXODURODUDNGDJHoHU
IP-WDEDQOWHULPLQGHQGHDQODOGJLELKHU,3-WDEDQOVDQDOVXQXFXLoLQVXQXFXIDUNOELU,3
DGUHVLQH VDKLS ROPDOGU %X ROD\ ELUGHQ oRN D EDODQWVQD VDKLS PDNLQH LOH YH\D ELUoRN
LOHWLPVLVWHPLWDUDIQGDQGHVWHNOHQHQVDQDODUD\]NXOODQPLOHVDODQDELOLU
$SDFKH
QLQ,SWDEDQO6DQDO%XOXQGXUPDoLQ.XUXOXPX
%LUoRNVXQXFX\XGHVWHNOH\HELOPHVLLoLQ$SDFKH
QLQNRQILJUDV\RQXQXQ\DSOPDVQGDLNL\RO
YDUGU +HU VXQXFX DG LoLQ D\U ELU KWWSG GHDPRQ oDOWUODELOLU <DGDWPYLUWXDOKRVW
ODU
GHVWHNOH\HQWHNELUGHDPRQoDOWUODELOLU
%LUGHQoRNGDHPRQNXOODQODQ\HUOHU
- *YHQOLN E|OPH NRQXODU YDUGU 0HVHOD FRPSDQ\
LQ FRPSDQ\
GHQ
KLoELUNLLQLQZHEGQGDYHULOHULQLRNXPDVQLVWHPHGLi bir durumda,
KHUELULIDUNO8VHU*URXS/LVWHQYH6HUYHU5RRWD\DUODULOHoDODQLNL
GHDPRQ
DLKWL\DoYDUGU
- 0DNLQDGDNL KHU ,3DOLDV
GLQOHQHUHNEHOOHNYHGRV\DWDQPOD\FODUQQ
JHUHNVLQLPOHUL ]DUDU J|UPHGHQ JHUoHNOHWLULOHELOLU 6DGHFH ZLOGFard"
adresi veya belirli adresler dinlenebilir. Bu nedenle, herhangi bir nedenle
belirli bir adresi dinlemeye ihtiya olursa, tm belirli adreslerin
dinlenmesi gereklidir.
7HNELUGDHPRQNXOODQODQ\HUOHU
- KWWSGNRQILJUDV\RQXVDQDOVXQXFXODUDUDVQGDSD\ODODELOLU
- 0DNLQHE\NPLNWDUODUGDLVWHHFHYDSYHULU%XQHGHQOHD\UGHDPRQ
ODUGDoDOPDLOHROXDFDNSHUIRUPDQVND\E|QHPOLRODELOLU
1. %LUGHQID]ODGDHPRQNXOODQOPDV
+HU VDQDO VXQXFX LoLQ D\U ELU KWWSG NXUXOXPX \DUDWOU +HU NXUXOXPGD Geamon' un servis
YHUHFHL ,3 DGUHVL YH\D VDQDO VXQXFX VHoPHN LoLQ FRQILJXUDWLRQ GRV\DVQGD /LVWHQ
GLUHNWLILQLNXOODQOUgUQHLQ
Listen www.smallco.com:80
%LUPDNLQHDG\HULQHELU,3DGUHVLNXOODQPDNWDYViye edilmektedir.
2. 6DQDOVXQXFXODUODWHNELUGDHPRQNXUXOPDV
%XUDGD DQD ELOJLVD\DU YH WP VDQDO VXQXFXODU LoLQ WHN ELU KWWSG LVWHNOHUL FHYDSOD\DFDNWU
&RQILJXUDWLRQGRV\DVQGDNL9LUWXDO+RVWGLUHNWLIL6HUYHU$GPLQ6HUYHU1DPH'RFXPHQW5RRW
ErrorLog ve TransferLog veya CustomLog configuration direktiflerine, her sanal sunucu iin
IDNOGHHUOHUDWDPDGDNXOODQOUgUQHLQ
<VirtualHost www.smallco.com>
ServerAdmin webmaster@mail.smallco.com
DocumentRoot /groups/smallco/www
ServerName www.smallco.com
ErrorLog /groups/smallco/logs/error_log
TransferLog /groups/smallco/logs/access_log
</VirtualHost>
<VirtualHost www.baygroup.org>
ServerAdmin webmaster@mail.baygroup.org
DocumentRoot /groups/baygroup/www
ServerName www.baygroup.org
ErrorLog /groups/baygroup/logs/error_log
TransferLog /groups/baygroup/logs/access_log
</VirtualHost>
+HPHQ KHPHQ KHU FRQILJXUDWLRQ GLUHNWLIL 9LUWXDO+RVW GLUHNWLILQLQ LoLQH NRQDELOLU VWLVQDODU
ServerType, StartServers, MaxSpareServers, MinSpareServers, MaxRequestsPerChild,
%LQG$GGUHVV /LVWHQ 3LG)LOH 7\SHV&RQILJ 6HUYHU5RRW 1DPH9LUWXDO+RVW YH ELUNDo EDND
GLUHNWLIGDKDROPDNWDGU
(HU VX(;(& ZUDSSHU NXOODQOPVD 8VHU YH *URXS ELU 9LUWXDO+RVW GLUHNWLILQLQ LoLQGH
NXOODQODELOLU
2.4 Firewall: Ipchains
,SFKDLQVHJLUL
Ipchains, Linux un IPv4 firewall kodunun ve BSD nin, ipfw paketinin bir trevi olan
LSIZDGPSDNHWLQLQWHNUDU\D]OPKDOLGLU,3SDNHWOHULQLILOWUHOHQGLUPHNRQXVXQGDSL\DVDGDNL
ELQOHUFH GRODUD VDWODQ EHQ]HUOHUL LOH D\Q NDOLWHGH VXQXODQ YH oHNLUGHN ]HUL /LQX[
DOWQGDoDODQFUHWVL]ELU\D]OPGU
,SFKDLQVHVNLILUHZDOONRGXQGDNLGHIUDJPDQWDV\RQHNVLNOLLELWVD\DoODUQHNVLNOLL7&3
8'3,&03KDULFLQGHNLSDNHWOHULoLQGHVWHLQLQROPDPDVWHUVNXUDOODUWDQPODPDROPDPDV
E\N GHLLNOLNOHU \DSPDQQ ]RU ROPDV JLEL QHGHQOHUGHQ GROD\ RUWD\D oNPWU ,SFKDLQV
LQ EWQ YHUVL\RQODUQGD EXQODUQ WDPDPQD GHVWHN YHULOPHNWH YH JHOHFHN YHUVL\RQODUGD GD
1$7JLELJHOLPL|]HOOLNOHUe de yer verilecektir.
Ipchains KDNNQGD en son bilgilere ve D\Q ]DPDQGD HQ VRQ YHUVL\RQXQD
http://www.rustcorp.com/linux/ipchains DGUHVLQGHQ XODODELOLU $\UFD EX G|NPDQQ
KD]UODQPDVQGD HVDV ND\QDN RODUDN DOQDQ ,3&KDLQV +2:72 \D GD http://www.linux-
howto.com/LDP/HOWTO/IPCHAINS-HOWTO-1.html DGUHVLQGHQ XODPDN PPNQGU
$\UFD GQ\D ]HULQGH ,SFKDLQV ]HULQH oDODQ NXOODQF YH JHOLWLULFLOHU LOH GLUHN LOHWLLPH
gemek iin ise e-posta listesi mevcuttur. Bu listeye ye olmak iin ipchains@rustcorp.com
DGUHVLQHLoLQGHVXEVFULEH\D]OELUPesaj gndermek yeterlidir.
%LU DGHNL EWQ SDNHWOHU SDNHWOHU KDOLQGH LOHWLOPHNWHGLU OHWLOHFHN RODQ YHUL |QFH EHOLUOL
X]XQOXNWDSDNHWOHUHE|OQUYHDUGQGDQEXSDNHWOHULQKHUELULQLQEDQDQHUHGHQJeldiklerini,
QHUH\HJLWWLNOHULQLSDNHWLQWLSLYHEHQ]HUL\|QHWLPDPDoOELUNDoED\WYHULHNOHQLU3DNHWLQEX
EDONNVPQDheaderJHUoHNWHYHULEXOXQDQDUNDNVPQDLVHbodyDGYHULOLU
7&3,3GHQLOHQSURWRNRO7&38'3JLELSHNoRNSURWRNROQELUOHLPLQGHQROXXUYHKHUELU
SURWRNROQ NHQGLQH DLW |]HOOLNOHUL YDUGU gUQHLQ ZZZ GH H-mail transferinde, telnet vb.
SODWIRUPODUGD NXOODQODQ 7&3 SURWRNRO O HO VNPD GL\HELOHFHLPL] ELU HNLOGH LOHWLLP
NXUDUNLEXGDXHNLOGHELUNRQXPD\DEHQ]Hr. %DODQPDNLVWL\RUXP, 7DPDP%DODQ,
7HHNNUOHU.
3DNHW )LOWUHOHPH GH DQD PDQWN LVH JHOHQ KHU SDNHWLQ KHDGHU NVPQDEDNDUDNJHOHQSDNHWLQ
QHROGXXQXQDQODOPDVYHDUGQGDQGDKD|QFHGHQEHOLUOHQPLRODQNXUDOODUoHUoHYHVLQGHEX
paketi verilebiOHFHNWHSNLGHQELULVLLOHDUODPDNWU9HULOHELOHFHNWHSNLOHUXQODUGU
Deny *HOHQSDNHWLQJHoLLQHNHVLQOLNOHL]LQYHUPHPHNWLU
Accept *HOHQSDNHWLQJHoLLQHL]LQYHUPHNWLU
Reject <LQHJHOHQSDNHWLQJHoLLQHL]LQYHUPHPHNWLUIDNDWSDNHWLJ|QGHUHQND\QDD
UHMHFWHGLOGLLELOGLULOLU
2.4.2.2-/LQX[oHNLUGHLYHSDNHWOHPH
/LQX[ GD ILUHZDOO \D]OP YH SDNHW ILOWUHOHPH \D]OPODU oHNLUGHN LOH EWQOHLN RODUDN
oDOPDNWDGU (HU VLVWHPGH LSFKDLQV NXOODQPDN LVWHQL\RUVD LON DDPD EX GHVWHLQ oHNirdek
LoHULVLQGH PHYFXW ROXS ROPDGQ DQODPDN ROPDOGU %XQX DQODPDQQ HQ NROD\ \ROX
SURFQHWLSBIZFKDLQV GRV\DVQQ PHYFXW ROXS ROPDGQD EDNPDNWU (HU EX GRV\D YDU LVH
ekirdek iersindeILUHZDOOGHVWHLPHYFXWWXU<RNVD\HQLELUoHNLUGHNGHUOHPHk ve derlerken
XPDGGHOHUHGLNNDWHGLOPHVLJHUHNLU
CONFIG_EXPERIMENTAL=y
CONFIG_FIREWALL=y
CONFIG_IP_FIREWALL=y
CONFIG_IP_FIREWALL_CHAINS=y
CONFIG_FIREWALL=y
CONFIG_IP_FIREWALL=y
3L\DVDGDNL EWQ /LQX[ VUPOHULQGH PXWODND ELU DGHW ILUHZDOO \D]OP JHOPHNWHGLU (HU
/LQX[ oHNLUGHL ; VUP LVH HOLQL]GHNL VUPGH LSIZDGP PHYFXWWXU YH oHNLUGHN
GHUOHGLNWHQVRQUDLSFKDLQVDQDVD\IDVQGDQEX\D]OPQLQGLULOLSNXUXOPVJHUHNLU$PDHHU
ekirdek srm 2.1.X ve zeri ise, ipchains, bu srmde zaten mevcuttur.
,SFKDLQV8\JXODPDODU
7UDQVSDUHQW 3UR[\ .XOODQP 7UDQVSUR[\ EHQ]HUL ELU SURJUDP LOH NXOODQF\D KLo
SUR[\ D\DU \DSWUPDGDQ VDQNL NHQGLVL GLUHN ELU EDODQW VDO\RUPX JLEL ELU RUWDP
\DUDWODELOLU %WQ NXOODQFODUQ GDU\D oN HVQDVQGD ]HULQGHQ JHoWLNOHUL ELU
PDNLQH\H EX \D]OP NXUXOXU .XOODQF ELU VD\ID\D EDODQUNHQ EX PDNLQDGDQ JHoHU
ve bu esnada bu makina paketleri kendi zerindeki 81, 8080 gibi bir porta
\|QOHQGLULOLU $UGQGDQ GD VWDQGDUW SUR[\ PDQW LOHU %X LL \DSPDN LoLQ
QXPDUDO SRUWWD WUDQVSUR[\ NXUXOX ROGXX YDUVD\ODUDN DDGDNL EHWLP NXOODQODELOLU
(Ipfwadm versiyonu)
Port Ynlendirme:(QEDVLW\DNODPGU6XQXFX]HULQGHEHOOLELUSRUWWDELUSURJUDP
bekletilir. KullDQFEXSRUWDEDODQWNXUDUYHLVWHGLLVD\ID\VXQXFXGLHUPDNLQHGHQ
DOS EX NXOODQFQQ EDODQG SRUWD NRS\DODU (Q \D\JQ SURJUDP redir DGO
SURJUDPGU
,SFKDLQV.XOODQP
7&3,33DNHWOHULQH8\JXODQDELOHFHNOHPOHU
Accept: PaNHWLQILUHZDOOGDQJHoPHVLQLVDODU
Reject: 3DNHWNDEXOHGLOPH]JHUL\HSDNHWLQNDEXOHGLOPHGLLQLELOGLUHQ,&03PHVDM
gnderilir.
Deny: Paket ldrlr ve geriye bir mesaj gitmez.
Redirect: 3DNHW ELU EDND SRUWD J|QGHULOLU <DOQ] EX SRUW \HUHO ELU Sort (local port)
ROPDOGUdHNLUGHNGHUOHPHHVQDVQGD CONFIG_IP_TRANSPARENT_PROXY parametresi
JHoLOPLLVHNXOODQODELOLU
Return: 7DEORODU DUDVQGD JHUL G|Q VDODU dDUDQ WDEOR\D JHUL G|QHU %LU
WDEORQXQVRQNXUDOLOHQGLNWHQVRQUDGDD\QGXUXP sz konusudur.
7DEOR2OXWXUPDNoLQ*HoHUOL.RPXWODU
-A Append %LUWDEORQXQVRQXQDNXUDOHNOHPHNLoLQNXOODQOU
-D Delete 7DEORGDQ NXUDO VLOPHN LoLQ NXOODQOU GHQ EDOD\DQ NXUDO
QXPDUDVQDOU
-R Replace %LU NXUDO GHLWLUPHN LoLQ NXOODQOU GHQ EDOD\DQ NXUDO
QXPDUVDOU
-I Insert $UD\DNXUDOJLUPHNLoLQNXOODQOU
-L List 8\JXODPDGDRODQNXUDOODUOLVWHOHU
-F Flush %LUWDEORQXQWDPDPQQVLOHU
-Z Zero +HUELUNXUDOQVD\DoODUQVIUODU
-N New Yeni bir kural (tablo) kPHVLWDQPODU
-X oLERRODQWDEOR\XVLOHU
-D oLGROXRODQWDEORQXQLoLQLERDOWU
-P Policy 7DEORLoLQWDQPODQDNXUDOD\DUODU.XOODQFWDQPOWDEORODU
LoLQJHoHUOLGHLOGLU
-M Masq 0DVTXDUHGLQJLOHPDVNHOHQPLEDODQWODUOLVWHOHU-L ile ya da
6LOHNXOODQOU
-S dHNLUGHH PDVTXDUHGLQJ LoLQ SDUDPHWUH JHoPH\L VDODU
SDUDPHWUHVL YDUGU 6DQL\H FLQVLQGHQ WFS WFS WLPHRXW WFSILQ
3DUDPHWUH RODUDN JLULOHQ YDUVD\ODQ |Q WDQPO ]DPDQ
belirtir.
-C Verilen tabloyu bir paket iin dener. Gerek bir paket iin
LOHWLOHQ WP oHNLUGHN UXWLQOHUL EX SDNHW LoLQ GH D\QHQ
X\JXODQU
7DEOR2OXWXUPDGD.XOODQODQ3DUDPHWUHOHU
-p [!] protokol tcp / udp / icmp veya hepsi iin all (all=0)
NXOODQODELOLULDUHWLNRXOXWHUVLQHevirmek iin
NXOODQOU
-s [!] adres[/mask] [!] [port] .D\QDN WDQPODPDVGU 3DNHWLQ oNW ND\QD
belirtir. Adres URL, IP olabilir. Mask D PDVNHVL
RODELOHFHL JLEL - DUDVQGD ELU QXPDUD GD
RODELOLU %X QXPDUD D PDVNHVL LoLQGH VROGDQ
DUDONV] GHHUL RODQ ELW VD\VGU gUQHLQ
255.255.255.0 iin 24, 255.255.255.255 iin 32
dir. Port oNODQ SRUW QXPDUDVQ EHOLUWLU $UDON
WDQPODPDV \DSODELOLU gUQHLQ LOH XQFX
SRUWXQDUDVLoLQ\D]OULOHXQFXSRUWODU
DUDV KDULo GHPHN LoLQ \D]OU %X NVPD
ICMP tipi de girebilir. Numara veya tip_ismi
NXOODQOU *HoHUOL ,&03 DGODU ipchains -h icmp
NRPXWX LOH HOGH HGLOHELOLU (HU SRUW QXPDUDODU
JLULOPH]VH EDVODQJo SRUWX ELWL SRUWX
ROXU (HU fragment f NXOODQOUVD SRUW QXPDUDV
NXOODQOPD]
-d [!] adres [/mask] [!][port] +HGHI DGUHVL WDQPODU s iin geerli kurallar
aynen geerlidir.
-MLOHP 6RUJXODQDQ SDNHWOHULQ NRXOX VDODPDV
GXUXPXQGD QH \DSODFDQ EHOLUWLU (HU EXNVP
DWODQUVD SDNHW NRXOXQ VDODQPDVQGDQ KLo
etkilenmez. 6DGHFHNXUDOQVD\DFELUDUWDU
-i arayz %D]HQ JHOHQ SDNHWLQ KDQJL DUD\]GHQ JHOGLL
|QHPOLGLU <D]OPD]VD EWQ DUD\]OHU NDEXO
HGLOLU :LOGFDUG NXOODQP LoLQ
\HULQH
NXOODQOU
-f 7&3 SDNHWOHULQLQ WDQPD VUDVQGD E|Onmeleri
JHUHNLU %X WLS SDNHWOHULQ \DNDODQPDV LoLQ
NXOODQOU
-b 3DNHW LoLQ WDQPDODQDQ \ROXQ WHUVL LoLQ GH
X\JXODQPDVQVDODU
-v .XUDO LoLQ GHWD\O ELOJL YHULU 726 YH NXOODQODQ
DUD\] DGUHVLQL GH LoHULU 6D\DoODUQ GD
J|]OHQPHVLQLVDODU
-n IP QXPDUDODUQYHSRUWDGUHVOHULQL\D]DU
-l 9HULOHQ NXUDO LoLQ WXWXODQ VD\Do ND\W GRV\DODUQ
gsterir.
-o [max paket boyu] .RXOD X\DQ SDNHWOHUL EHOLUWLOHQ ELU \HUH NRS\DODU
VWDWLNVHO \RUXPODPDODUGD NXOODQODELOLU
ekirdekte CONFIG_IP_FIREWALL_NETLINK
GHVWHLQLQROPDVJHUHNOLGLU
[!] y SYN biti 1 ACK ve FIN biti 0 olan TCP
SDNHWOHULQLQ \DNDODQPDVQ VDODU %X WU SDNHWOHU
ELU 7&3 EDODQWVQQ \DSOPD LVWHLQL WDU %X
RSVL\RQ NXOODQOUVD 7&3 EDODQW LVWHL RODQ
SDNHWOHU\DNDODQPROXU
2.4.4.4 rnekler
%LU PDLO VXQXFXGD GDUGDQ JHOHQ isteklerden e-mail alma, verme harici btn
paketleri yasaklamak.
; & FODVV ,3 OHUGHQ JHOHQ NXOODQFODUQ ; & FODVV ,3 \H
sDKLSZHEVXQXFXODUQZHEVD\IDODUQJ|UQWOHPHVLQLHQJHOOHPHN
,&03 SDNHWOHULQ SRUWODU \RNWXU %XQXQ \HULQH ,&03 SDNHWOHULQLQ WLS Wype) ve kod (code)
ODU PHYFXWWXU s veya d belirtiminde port yerine ICMP paketlerinin tipleri belirtilerek
NVWODPDODU \DSODELOLU (Q \D\JQ NXOODQODQ ,&03 WLSOHUL YH JHUHNOL ROGXX X\JXODPDODU
NVDFD|\OHOLVWHOHQHELOLU
3DNHW$G *HUHNOLROGXu uygulama
echo-reply Ping
destination-unreachable +HUWUO7&38'3WUDILLLoLQ
redirect Routing iin
echo-request Ping
time-exceeded Traceroute
ICMP paketlerinin tam listesini almak iin ipchains h icmp komutu verilebilir.
3DNHWOHULQND\WGRV\DODUQQWXWXOPDV
%LUNXUDOWDQPODQG]DPDQEXNXUDODX\DQSDNHWOHUVHUYHU]HULQGHQJHoWLNoHYHNXUDOODUD
WDEL WXWXOGXNoD EXQODUQ ND\W GRV\DODU NHUQHOG WDUDIQGDQ \DNDODQU YH DUGQGDQ V\VORJG D
LOHWLOHUHN ELU ND\W GRV\DVQGD EXQODUQ \HU DOPDV VDODQU%XND\WODUQWXWXOGXXGRV\DQQ
QHRODFDHWFV\VORJGFRQIGRV\DVLoHUVLQGHDDGDNLVDWUODUDEHQ]HUELUHNLOGHEHOLUWLOLU
kern.* -/var/log/kern.log
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
%XUDGDQGDDQODODELOHFHLJLELEXPHVDMODUQELUNRS\DVYDUORJNHUQORJGRV\DVQGDGLHUL
GH YDUORJPHVVDJHV GRV\DVQGD WXWXOPDNWDGU %XUDGD EXOXQDFDN GRV\DQQ IRUPDW X
HNLOGHGLU
%XUDGDDQODWOPDNLVWHQLOHQNVDFD|\OH|]HWOHQHELOLU
Input%XPHVDMQHNOHQPHVLQH\RODoDQFKDLQLQLVPL
Deny: Buraya eklenirken etkili olan kural.
Eth0+DQJLDUD\]]HULQGHHWNLOLROGXX
Proto=17 3DNHWLQ QH SDNHWL ROGXXQX DQODWU 7DP OLVWHVL HWFSURWRFROV GRV\DVQGD \HU
DOPDNWDGU%XUDGDQGDDQODODELOFHLJLELEXSDNHWELU7&3SDNHWLGLU
192.168.2.1:53: Paketin hangi,3GHQJHOGLLQLYHLOHGHKDQJLSRUWWDQJHOGLLQLEHOLUWLU
QROX SRUW DODQ DG SRUWXGXU YH EX GD EX SDNHWLQ ELU '16 FHYDE RODELOHFHLQL
GQGUPHNWHGLU
192.168.1.1:10253DNHWLQJLGHFHL,3\LYHLOHGHJLGHFHLSRUWXEHOLUWL\RU
L:34: 3DNHWLQE\WHX]XQOXXQGDROGXXQXEHOLUWL\RU
S=0x006HUYLVLQWLSLQL726EHOLUWLUHE|OHUHNYHLSFKDLQVWDUDIQGDQWLSLEXOXQDELOLU
I=18,S,'VLQLEXOPDP]VDODU
F=0x00003DNHWLQIUDJPHQWHGLOLSHGLOPHGLLQLDQODWU[YH[LOHEDOD\anlar fragmente
HWPHELWLQLQLOHPHNWHROGXXQXDQODWU[YH[LOHEDOD\DQODULVHGDKDID]ODIUDJPHQWHW
ELWLQLQLDUHWOLROGXXQXDQODWU
T=254 3DNHWLQ QH NDGDU VUH LOHPHGH NDODFDQ DQODWU %LU VUH VRQUD SDNHW JHoHUOLOLLQL
yitirecektir.
+DQJL LOHWLP VLVWHPL NXOODQOUVD NXOODQOVQ JHOHQ SDNHWOHU ]HULQGH KLoELU NRQWURO V|]
NRQXVX GHLOGLU $PD JLGHQ SDNHWOHU ]HULQGH oHLW QLWHOLN WDQPODPDV \DSODELOLU %XQODU
Minimum Delay (en az bekleme), Maximum Reliability (en fazla gvenilirlik), Maximum
Throughput (QID]ODoNWYHMinimum CostHQD]PDOL\HWVHYL\HOHULGLU%XQODUQNODVLN
NXOODQPDODQODUYHNXOODQPLoLQJHUHNOLSDUDPHWUHOHULQLDDGDVXQXOPDNWDGU
gUQHN YHUPHN JHUHNLUVH DDGDNL NXOODQP HQ JHQHO RODUDN NXOODQODQ 726 \DSVQ
gstermektedir.
&KDLQLOHPOHUL
,SFKDLQV SDNHWLQLQ JHWLULL HQ KR |]HOOLNOHUGHQ ELU WDQHVL GH LQSXW RXWSXW IRUZDUG JLEL
YDUVD\ODQ FKDLQ LVLPOHULQH LVWHQLOHQ LVLPOHULQ HNOHQHELOPHVL YH E|\OHFH GDKD L\L RUJDQL]H
ROPXELU\DSGDNXUDOODUNPHVLQHVDKLSROXQDELOLU
Yeni bir chain yaratmak iin: ipchains N girdi ipchains -A input -i ppp0 -j girdi
oLERELUFKDLQLVLOPHNLoLQipchains X girdi
%LUFKDLQLQLoLQLERDOWPDNLoLQipchains F girdi
Bir chain i listelemek iin: ipchains L girdi
gLELNRPXWODUNXOODQOU
<DSODQOHPOHUL.DOF.OPDN
<DSODQLSFKDLQVFKDLQOHULLSFKDLQV-VDYHNRPXWXLOHELUGRV\D\DND\GHGLOHELOLUYHDUGQGDQ
bunlar ipchains-UHVWRUHNRPXWXLOH\HQLGHQ\NOHQHELOLU.RPXWODUQNXOODQP|\OHGLU
ipchains-save > firewall.txt
ipchains-restore < firewall.txt
SXoODU
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then
echo -n "Setting up IP spoofing protection..."
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $f
done
echo "done."
else
echo "CONTROL-D will exit and continue system startup."
echo
# Start a single user shell on the console
/sbin/sulogin $CONSOLE
fi
ICQ, ftp vb uygulamalar iin destek ieren bir firewall paketi iin
ftp://ftp.interlinx.bc.ca/pub/spf adresine EDNODEilir.
IWSGHVWHLLoLQELUDGHWoHNLUGHNSDWFKLPHYFXW7DUJ]GRV\DVQhttp://www.csn.tu-
chemnitz.de/~mha/patch.ftp-data-2.gz adresinden indirilebilir.
2.5 Ek Ktphaneler: C-client
.XUXOXPLoLQDDGDNLNRPXWGL]JLVL\HWHUOLROPDNWDGU
make slx
yes|cp c-client/c-client.a /usr/lib/c-client.a
yes|cp c-client/c-client.a /usr/lib/libc-client.a
yes|cp src/c-client/rfc822.h /usr/include
yes|cp src/c-client/mail.h /usr/include
yes|cp c-client/linkage.h /usr/include
2.6 Betim Dili: PHP3 / PHP4 (Zend)
ONRUWD\DoNWQGDZHEWHNQRORMLVLQLQEXVHYL\HJHOLHFHLGQOPHPLROPDONL+70/
bir programlama dilinden beklenen pek zellikten yoksundur. zellikle bir dng
PHNDQL]PDVYHNRQWUROPDQWQQROPDPDV+70/
LQJHOLPLYHULWDEDQVLWHOHUGH\HWHUVL]
NDOPDVQD QHGHQ ROXU %X QHGHQOH SHN oRN VXQXFX YH LVWHPFL WDUDIO SURJUDPODPD GLOL LOH
+70/ GHVWHNOHQPH\H oDOOPWU %XQODUQ EDOFDODU -DYD -DYDVFULSW 3HUO 7&/ 3+3
ASP ve Python' dur.
OHUOH\HQWHNQRORMLYHZHEVLWHOHULQLQDUWNVWDWLNLoHULNJ|VWHUPHNWHQoRNVUHNOLJQFHOOHQHQ
ELULoHULHVDKLSROPDODUVRQXFXQGDZHEVLWHOHULQGHYHULWDEDQNXOODQPJQGHPHJHOPLWLU
<LQHEXDPDoODEHQ]HUGLOOHULOHo|]PDUDQPWU
%LUZHEVLWHVLQGHHQoRNNXOODQODQEHWLPOHPHGLOL3HUORODJHOPLWLU6RQ]DPDQODUGD3HUO
LQ
SHN SUDWLN YH PRGOHU ROPDPDV QHGHQL LOH VRQ JQOHUGHHLOLP$63YH3+3GLOOHUL]HULQH
\RXQODPWU
3+3 X DQGD PLO\RQGDQ ID]OD VLWHGH DNWLI RODUDN NXOODQOPDNWD YH \NVHN SHUIRUPDQV
JYHQLOLUOLLVWDELOLWHVLLOHUDNLEL$63
QLQoRN|QQGHGLU
3RVWDF
QQ JHOLWLULOPHVL VUDVQGD 3+3
GHQ DNWLI RODUDN \DUDUODQOPWU %X GRNPDQGD
3+3
QLQHQJoO|]HOOLNOHULQGHQRODQYHULWDEDQHULLPLYHH-PDLOIRQNVL\RQODUD\UQWODULOH
incelenecektir.
323,0$3YH1173IRQNVL\RQODU
imap_append
.XOODQP
%DDUGXUXPXQGDWUXHEDDUV]ONGXUXPXQGDIDOVHG|QGUU
LPDSBDSSHQG EHOLUOHQHQ PER[ PHVDM NXWXVXQD VWULQJ ELU PHVDM HNOHU (HU VHoPeli
ED\UDNODUWDQPODQPVDEXQODUGDEXPHVDMNXWXVXQD\D]DU
&\UXV ,0$3 VXQXFXGD VDWU VRQX RODUDN \n" yerine "\r\Q NXOODQOPDOGU $NVL KDOGH LOHP
KDWDLOHVRQXoODQU
imap_base64
%$6(
HJ|UHNRGODQPPHWQLQNRGXQXo|]HU
.XOODQP
imap_body
0HVDMQJ|YGHNVPQRNXU
.XOODQP
FT_PEEK - \6HHQED\UDEHOLUOHQPHGLLVUHFHEXED\UDNbelirlenmez
FT_INTERNAL -'|QVWULQJ
LLoVHOIRUPDWWDGU&5/)
\HX\PD]
imap_check
.XOODQP
OJLOLSRVWDNXWXVXKDNNQGDELOJLG|QGUU%DDUV]ONGXUXPXQGD)$/6(G|QHr.
imap_check() fonksiyonu, sunucudaki ilgili posta kutusunun durumunu kontrol eder ve bir
QHVQHLoLQGHDDGDNL|]HOOLNOHULWD\DQELOJLJHULG|QHU
Date -SRVWDNXWXVXLoHULLQLQVRQGHLLNOLNWDULKL
Nmsgs -SRVWDNXWXVXQGDNLPHVDMVD\V
Recent -SRVWDNXWXVXQGDNLHQVRQPHVDMODUQVD\V
imap_close
%LU,0$3YHULDNQNDSDWU
.XOODQP
imap_createmailbox
<HQLELUSRVWDNXWXVX\DUDWU
.XOODQP
LPDSBFUHDWHPDLOER[ PER[
Q EHOLUWWLL \HQL ELU SRVWD NXWXVXQX \DUDWU 8OXVODUDUDV
NDUDNWHUOHULoHUHQLVLPOHULPDSBXWIBHQFRGHWDUDIQGDQNRGODQPDOGU
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
imap_delete
OJLOLSRVWDNXWXVXQGDNLELUPHVDMVLOLQPHN]HUHLDUHWOHU
.XOODQP
True dner.
imap_deletemailbox
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
PER[
Q IRUPDW LoLQ LPDSBFUHDWHPDLOER[ LPDSBUHDQPHPDLOER[ YH LPDp_open()' a
EDNQ]
imap_expunge
6LOLQPHN]HUHLDUHWOHQHQWPPHVDMODUVLOHU
.XOODQP
True dner.
imap_fetchbody
.XOODQP
%XIRQNVL\RQEHOLUOHQHQWH[WVWULQJELUPHVDMQJ|YGHVLQLQEHOOLELUE|OPQQJHtirilmesini
VDODU YH EXQX WH[W VWULQJ RODUDN G|QGUU %X E|OP EHOLUWLPL VSHFLILFDWLRQ
X KHU ELU
,0$3 EHOLUWLPL LoLQ J|YGH SDUoDV OLVWHVLQL LDUHWOH\HQ QRNWD LOH VQUODQGUOPELULQWHJHU
ODUVWULQJ
LGLU*|YGHSDUoDODUQQNRGXEXIRQNVL\RQOD zlmez.
LPDSBIHWFKERG\LoLQVHoHQHNOHUDDGDNLOHULQELUYH\DGDKDID]ODVLOHELUOLNWHELUELWPDVN
tir:
FT_PEEK - \6HHQED\UDEHOLUOHQPHGLLVUHFHEXED\UDNEHOLUOHQPH]
FT_INTERNAL -'|QVWULQJ
LLoVHOIRUPDWWDGU&5/)
\HX\PD]
imap_fetchstructure
%HOOLELUPHVDMQ\DSVQRNXU
.XOODQP
%X IRQNVL\RQ YHULOHQ ELU PHVDMQ WP \DSVDO ELOJLVLQL JHWLULU 6HoPHOL ED\UDNODU tek bir
SDUDPHWUH\H VDKLSWLU )7B8,' %X SDUDPHWUH IRQNVL\RQD PVJBQXPEHUGHLNHQLQHELU8,'
JLELGDYUDQPDVQV|\OHU'|QQHVQHVLKHUPLPHHNOHQWLVLLoLQEHQ]HUELUQHVQHLOHEHUDEHU
]DUI LoVHO WDULK E\NON ED\UDNODU YH J|YGH \DSV LoHULU '|Q QHVQHOHULQLQ \DSV
DDGDNLJLELGLU
LPDSBIHWFKVWUXFWXUHLoLQG|QQHVQHOHUL
Notlar:
a GSDUDPHWHUVKHUELULQLQELUDWWULEXWHYHELUYDOXH|]HOOLLRODQQHVQHOHUGL]LVL
ESDUDPHWHUVKHUELULQLQELUDWWULEXWHYHELUYDOXH|]HOOLLRODQQHVQHOHUGL]LVL
F SDUWV \DSGDNL WRS-OHYHO QHVQH LOH EHQ]H QHVQHOHULQ ELU GL]LVLGLU ODYH ROXQan 'parts'
QHVQHOHULQLLoHUHPHPHNVWYDUGU
Birincil gvde tipi
0 text
1 multipart
2 message
3 application
4 audio
5 image
6 video
7 other
Transfer kodlamalar
0 7BIT
1 8BIT
2 BINARY
3 BASE64
4 QUOTED-PRINTABLE
5 OTHER
imap_header
0HVDMQEDOQRNXU
.XOODQP
%XIRQNVL\RQoHLWOLEDONHOHPDQODUQQELUQHVQHVLQLG|QGUU
PHVDMED\UDNODU
1275HFHQW8QVHHQGXUXPXELUD]GDKDIDUNOGU(HUELUPHVDMQ8QVHHQROPDVLVteniyorsa
DDGDNLNRQWURO\DSOPDOGU
toaddress
to[]
fromaddress
from[]
ccaddress
cc[]
bccaddress
bcc[]
reply_toaddress
reply_to[]
senderaddress
sender[]
return_path
return_path[]
udate
fetchfrom
fetchsubject
imap_headers
%LUSRVWDNXWXVXQGDNLWPPHVDMODULoLQEDONODUG|QGUU
.XOODQP
%LU VWULQJ GL]LVL ELoLPLQGH IRUPDWODQP EDON ELOJLVLQL JHUL G|QGUU +HU PDLO PHVDM LoLQ
bir eleman.
imap_listmailbox
Posta kutuODUQQOLVWHVLQLRNXU
.XOODQP
3RVWD NXWXODUQQ LVLPOHULQL LoHUHQ ELU GL]L\L G|QGUU UHI YH SDWWHUQ
LQ WDQP LoLQ
LPDSBJHWPDLOER[HV
DEDNQ]
imap_getmailboxes
Posta NXWXODUQOLVWHVLQLRNXUYHKHUELULLoLQD\UQWOELOJLG|QGUU
.XOODQP
Posta kutusu bilgisini ieren nesnelerin bir dizisini dndrr. Her nesne, posta kutusunun tam
ismini ieUHQ ELU QDPH LOJLOL SRVWD NXWXVX KL\HUDUL SDUoDV LoLQ KL\HUDUL VQUOD\F RODQ
GHOLPLWHU YH DWWULEXWHV QLWHOLNOHULQH VDKLSWLU $WWULEXWHV DDGDNLOHUH NDU WHVW HGLOHELOHQ ELU
bitmask' tir:
LATT_NOINFERIORS - %X SRVWD NXWXVXQXQ KLo FKLOGUHQ \Rktur. (bu posta kutusunun
DOWQGDKLoELUSRVWDNXWXVX\RNWXU
LATT_NOSELECT -%XELUSRVWDNXWXVXGHLOVDGHFHELUFRQWDLQHU
GUDoODPD]
LATT_MARKED -%XSRVWDNXWXVXLDUHWOLGLU6DGHFH8:-,0$3'WDUDIQGDQNXOODQOU
UHI QRUPDO RODUDN VDGHFH ,0$3 VXQXFX ROPDOGU HNOL ^LPDSBVHUYHULPDSBSRUW` SDWWHUQ
SRVWD NXWXVX KL\HUDULVLQGH QHUGHQ WDUDPD\D EDODQDFDQ EHOLUWLU (HU WP SRVWD NXWXODU
isteniyorsa, pattern iin '*' geirilmelidir.
SDWWHUQ
LQ SDUoDV RODUDN JHoLULOHELOHFHN LNL |]HO NDUDNWHU YDUGU
DQG
WP SRVWD
NXWXODUQ G|QGUPH DPDoO NXOODQOU (HU SDWWHUQ
RODUDN JHoL\RUVD EWQ SRVWD NXWXVX
KL\HUDULVLQLQ ELU OLVWHVL JHUL dner. '%' sadece o anki seviyeyi geri dndrr. '%' pattern
SDUDPHWUHVL RODUDN VDGHFH WRS OHYHO SRVWD NXWXODUQ G|QGUHFHNWLU 8:B,0$3' ]HULQGHNL
aPDLO
aPDLO GL]LQLQGHNL KHU SRVWD NXWXVXQX G|QGUU EX GL]LQLQ DOWQGDNL
dizinlerdekileri getirmez.
imap_listsubscribed
6XEVFULEHHGLOPLWPSRVWDNXWXODUQOLVWHOHU
.XOODQP
6XEVFULEH HWWLLQL] WP SRVWD NXWXODUQQ ELU GL]LVLQL G|QGUU +HPHQ KHPHQ
imap_listmailbox() ilH |]GHWLU 7HN IDUN EX IRQNVL\RQXQ VDGHFH VXEVFULEH RODUDN RWXUXP
DoWSRVWDNXWXODUQG|QGUPHVLGLU
imap_getsubscribed
6XEVFULEHHGLOPLWPSRVWDNXWXODUQOLVWHOHU
.XOODQP
imap_mail_copy
%HOLUOHQHQELUPHVDMELUSRVWDNXWXVXQDNRS\DODU
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
PVJOLVW
LQ WDQPODG PDLO PHVDMODUQ EHOLUOHQHQ SRVWD NXWXVXQD NRS\DODU PVJOLVW VDGHFH
PHVDMQXPDUDODUGHLOELUGL]LGLU5)&WDQPODQGJLEL
%D\UDNODUDDGDNLOHULQELUYH\DGDKDID]ODVQQELUELWPDVN
LGLU
CP_MOVE -.RS\DODPDGDQVRQUDRDQNLSRVWDNXWXVXQGDNLPHVDMODUVLOHU
imap_mail_move
7DQPODQDQPHVDMODUELUSRVWDNXWXVXQDWDU
.XOODQP
PVJOLVW
LQWDQPODGPDLOPHVDMODUQEHOLUOHQHQSRVWDNXWXVXQDWDUPVJOLVWVDGHFHPHVDM
QXPDUDODUGHLOELUGL]LGLU5)&WDQPODQGJLEL
%D\UDNODUELUELWPDVN
WUYHWHNVHoHQHk ierebilir.
imap_num_msg
2DQNLSRVWDNXWXVXQGDNLPHVDMVD\VQYHULU
.XOODQP
imap_num_recent
2DQNLSRVWDNXWXVXQGDNLVRQPHVDMODUQVD\VQYHULU
.XOODQP
2DQNLSRVWDNXWXVXQGDNLVRQPHVDMODUQVD\VQG|QHU
imap_open
%LUSRVWDNXWXVXQDELU,0$3YHULDNDoDU
.XOODQP
%DDU GXUXPXQGD ELU ,0$3 YHUL DN YH KDWD GXUXPXQGD IDOVH G|QGUU %X IRQNVL\RQ
D\UFD323DQG1173VXQXFXODUDGDYHULDNDoPDGDNXOODQODELOLU<HUHOPDNLQenin 143
QXPDUDOSRUWXQGDNLELU,0$3VXQXFX\DEDODQPDNLoLQDDGDNLOHU\DSOU
1
2 $mbox = imap_open ("{localhost:143}INBOX", "user_id", "password");
3
<HUHO PDNLQHQLQ QXPDUDO SRUWXQGDNL ELU 323 VXQXFX\D EDODQPDN LoLQ XQODU
NXOODQOU
1
2 $mbox = imap_open ("{localhost/pop3:110}INBOX", "user_id",
"password");
<HUHO PDNLQHQLQ QXPDUDO SRUWXQGDNL ELU 1173 VXQXFX\D EDODQPDN LoLQ DDGDNLOHU
\DSOU
1
2 $nntp = imap_open ("{localhost/nntp:119}comp.test", "", "");
3
UzaktakL ELU VXQXFX\D EDODQPDN LoLQ EDODQODFDN VXQXFXQXQ LVPL YH\D ,3 DGUHVL LOH
ORFDOKRVW\HUGHLWLULOLU
6HoHQHNOHUDDGDNLOHULQELUYH\DGDKDID]ODVLOHELUELWPDVN
WLU
OP_ANONYMOUS - news iin bir .newsrc kullanma veya gncelleme (Sadece NNTP' de)
OP_HALFOPEN -,0$3YH1173LVLPOHULLoLQELUEDODQWDoDPDELUSRVWDNXWXVXDoPD
CL_EXPUNGE -3RVWDNXWXVXNDSDQGQGDRWRPDWLNRODUDNVLO
gUQHNLPDSBRSHQ|UQHL
1
2 $mbox = imap_open ("{your.imap.host:143}", "username", "password");
3
4 echo "<p><h1>Mailboxes</h1>\n";
5 $folders = imap_listmailbox ($mbox, "{your.imap.host:143}", "*");
6
7 if ($folders == false) {
8 echo "Call failed<br>\n";
9 } else {
10 while (list ($key, $val) = each ($folders)) {
11 echo $val."<br>\n";
12 }
13 }
14
15 echo "<p><h1>Headers in INBOX</h1>\n";
16 $headers = imap_headers ($mbox);
17
18 if ($headers == false) {
19 echo "Call failed<br>\n";
20 } else {
21 while (list ($key,$val) = each ($headers)) {
22 echo $val."<br>\n";
23 }
24 }
25
26 imap_close($mbox);
27
imap_ping
,0$3YHULDNQQKDODDNWLIROXSROPDGQNRQWUROHGHU
.XOODQP
Veri akKDODFDQO\VDWUXHDNVLKDOGHIDOVHG|QHU
LPDSBSLQJ IRQNVL\RQX YHUL DNQQ KDOD DNWLI ROXS ROPDGQ DQODPDN LoLQ YHUL DNQD
SLQJ DWDU <HQL PDLO NHIHGHELOLU EX PHWRW SHUL\RGLN \HQL PDLO NRQWURO LoLQ KDUHNHWVL]
timeout' taki sunucularGDNXOODQODQFDQOWXWPHWRGXNDGDUWHUFLKHGLOHQELUPHWRWWXU
imap_renamemailbox
Eski bir posta kutusunu yeni bir posta kutusu olarak yeniden isimlendirir.
.XOODQP
Bu fonksiyon, eski bir posta kutusunu, yeni bir posta kutusu olarak yeniden
LVLPOHQGLULUPER[LVLPOHULQLQIRUPDWLoLQLPDSBRSHQ
DEDNQ]
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
PER[
QIRUPDWLoLQLPDSBFUHDWHPDLOER[LPDSBGHOHWHPDLOER[YHLPDSBRSHQ
DEDNQ]
imap_reopen
<HQLSRVWDNXWXVXQD,0$3YHULDNQWHNUDUDoDU
.XOODQP
Bu fonksiyon, IMAP veya NNTP sunucu zerinde yeni bir posta kutusuna belirlenen veri
DNQ\HQLGHQDoDU
6HoHQHNOHUDDGDNLOHULQELUYH\DGDKDID]ODVLOHELUELWPDVN
WU
OP_ANONYMOUS - news iin bir .newsrc kullanma veya gncelleme (Sadece NNTP' de)
OP_HALFOPEN - IMAPYH1173LVLPOHULLoLQELUEDODQWDoDPDELUSRVWDNXWXVXDoPD
CL_EXPUNGE - 3RVWD NXWXVX NDSDQGQGD RWRPDWLN RODUDN VLO %N] LPDSBGHOHWH YH
imap_expunge())
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
imap_subscribe
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
imap_undelete
6LOLQPLRODUDNLDUHWOHQHQPHVDMQLDUHWLQLNDOGUU
.XOODQP
%X IRQNVL\RQ EHOLUOHQHQ ELU PHVDMQ LPDSBGHOHWH YH\D LPDSBPDLOBPRYH WDUDIQGDQ VHW
HGLOHQVLOPHED\UDQNDOGUU
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
imap_unsubscribe
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
imap_qprint
.XOODQP
quoted-printable bir string' i 8 bitlik bir string' e evirir. (RFC2045, blm 6.7).
Bkz. imap_8bit().
imap_8bit
.XOODQP
8bit bir string' i, quoted-printable bir string' e evirir. (RFC2045, blm 6.7).
Bkz. imap_qprint().
imap_binary
.XOODQP
8bit bir string' i bir base64 string' e evirir. (RFC2045, Blm 6.8).
Bkz. imap_base64().
imap_scanmailbox
.XOODQP
3RVWDNXWXVXQXQPHWQLQGHNLVWULQJ
LLoHUHQSRVWDNXWXODUQQLVLPOHULQLQROXWXUGXXELUGL]L\L
geri dndrr. Bu fonksiyon imap_listmailbox()' a benzer. Fakat ek olarak posta kutusu
YHULVLQLQLoLQGHVWULQJLoHULLQLQYDUOQNRQWUROHGHU
imap_mailboxmsginfo
2DQNLSRVWDNXWXVXKDNNQGDELOJLJHWLULU
.XOODQP
2DQNLSRVWDNXWXVXKDNNQGDELOJLJHWLULU%DDUV]ONGXUXPXQGD)$/6(G|QHU
Date 6RQGHLLNOLNWDULKL
Driver Src
Mailbox Posta kutusunun ismi
Nmsgs 0HVDMVD\V
Recent 6RQPHVDMODUQVD\V
Unread 2NXQPDPPHVDMODUQVD\V
Size 3RVWDNXWXVXE\NO
imap_rfc822_write_address
.XOODQP
imap_rfc822_parse_adrlist
%LUDGUHVVWULQJ
LQLD\UWUU
.XOODQP
imap_setflag_full
0HVDMODUGDNLED\UDNODUVHWHGHU
.XOODQP
%X IRQNVL\RQ EHOLUOHQHQ VUD LoLQGH PHVDMODUQ ED\UDNODU NPHVLQH EHOLUOL ELU ED\UDQ
HNOHQGLLELUVWRND\RODoDU
%D\UDNODUDDGDNLOHULQELUYH\DGDKDID]ODVQQELUELWPDVN
Ldir:
ST_UID 6UDQXPDUDODU\HULQH8,'
OHULLoHUHQVUDGHLNHQL
imap_clearflag_full
0HVDMODUGDNLED\UDNODUWHPL]OHU
.XOODQP
Bu fonksiyon, belirlenen VUD LoLQGH PHVDMODUQ ED\UDNODU NPHVLQH EHOLUOL ELU ED\UDQ
VLOLQGLLELUVWRND\RODoDU8QVHWHGLOHELOHFHNED\UDNODU\\Seen", "\\Answered", "\\Flagged",
"\\Deleted", "\\Draft", ve "\\5HFHQWGLU5)&WDQPODQGJLEL
%D\UDNODUDDGDNLOHULQELUYH\DGDKDID]ODVQQELUELWPDVN
LGLU
ST_UID 6UDQXPDUDODU\HULQH8,'
OHULLoHUHQVUDGHLNHQL
imap_sort
0HVDMEDONODUQQGL]LVLQLVUDODU
.XOODQP
Verilen paramHWUHOHUHJ|UHVUDODQPPHVDMQXPDUDODUQQELUGL]LVLJHULG|QHU
%D\UDNODUDDGDNLOHULQELUYH\DGDKDID]ODVQQELUbitmask' idir:
ST_UID 6UDQXPDUDODU\HULQH8,'
OHULLoHUHQVUDGHLNHQL
SE_NOPREFETCH 7DUDQDQPHVDMODU|QFHJHWLUPH
imap_fetchheader
%LUPHVDMLoLQEDONG|QGUU
.XOODQP
%XIRQNVL\RQEHOLUOHQHQPHVDMQILOWUHOHQPHPL5)&IRUPDWWDNLEDOQQELUWH[WVWULQJ
olarak getirilmesine neden olur ve bu text string geri dner.
6HoHQHNOHUXQODUGU
)7B8,'PVJQRGHLNHQLELU8,'
GLU
)7B,17(51$/ '|Q GHLNHQL &5/) \HQL VDWU NXUDOODUQD X\PD JLULLPL ROPDNV]Q
LQWHUQDOIRUPDWWDGU
)7B35()(7&+7(;75)&7(;7D\Q]DPDQGDSUH-IHWFKHGLOPLROPDOGU
%LUPHVDMQWPPHWQL]DUDUJ|UUVHEXQXQVD\HVLQGHELU,0$3EDODQWVQGDHNVWUD577
\L
nler. (r\HUHOGRV\D\DND\GHWLOHPLQGH
imap_uid
%XIRQNVL\RQYHULOHQPHVDMVUDQXPDUDVQDJ|UH8,'G|QGUU
.XOODQP
%X IRQNVL\RQ YHULOHQ PHVDM VUD QXPDUDVQD J|UH 8,' G|QGUU %LU PHVDM VUD QXPDUDV
posWD NXWXVXQXQ LoHULL GHLWLNoH GHLLUNHQ 8,' ]DPDQOD GHLPH\HQ WHNLO ELU
WDQPOD\FGU%XIRQNVL\RQLPDSBPVJQR
XQWHUVLGLU
imap_msgno
%XIRQNVL\RQYHULOHQELU8,'
\HJ|UHPHVDMQVUDQXPDUDVQG|QGUU
.XOODQP
%XIRQNVL\RQYHULOHQVHDUFKNULWHULQHJ|UHLDUHWOHQPLPHVDMODUQELUGL]L
LQLG|QGUU
.XOODQP
%X IRQNVL\RQ YHULOHQ LPDS YHUL DNQGD DoN RODQ SRVWD NXWXVX ]HULQGH WDUDPD LOHPLQL
\DSDU FULWHULD EROXNODUOD VQUODQGUOP DDGDNL NHOLPHOHULQ L]LQ YHULOGLL ELU VWULQJ
WLU
Herhangi multi-word deLNHQOHUL|U)520MRH\VPLWKDNWDUOPDOGU
ALL -NULWHUHHOHQLNWPPHVDMODUJHULG|QGUU
CC "string" -&FVDKDVQGDNLVWULQJLOHPHVDMODUHOHWLULU
DELETED -VLOLQHQPHVDMODUHOHWLULU
FLAGGED - \\FLAGGED (bazen Important veya Urgent olarak da geer) bayrak kmesi ile
PHVDMODUHOHWLULU
NEW -\HQLPHVDMODUHOHWLULU
OLD - eVNLPHVDMODUHOHWLULU
RECENT - \\5(&(17ED\UDNNPHVLLOHPHVDMODUHOHWLULU
UNANSWERED -FHYDSODQPDPPHVDMODUHOHWLULU
UNDELETED - silLQPHPLPHVDMODUHOHWLULU
UNFLAGGED -ED\UDNODQPDPPHVDMODUHOHWLULU
UNSEEN -KHQ]RNXQPDPPHVDMODUHOHWLULU
imap_last_error
%X IRQNVL\RQ HHU YDUVD EX VD\IDQQ LVWHQPHVL VUHVLQFH ROXDQ VRQ ,0$3 KDWDVQ
dndrr.
.XOODQP
string imap_last_error(void );
%XIRQNVL\RQRDQNLVD\ID]HULQGHROXDQVRQ,0$3KDWDPHVDMQQWPPHWQLQLG|QGUU
+DWD \Q GRNXQXOPD]GU VRQUDGDQ LPDSBODVWBHUURU
X oDUPDN KDWDODUQ DUDVQD
JLUPHNVL]LQ\LQHD\QKDWD\G|QGUHFHNWLU
imap_errors
%X IRQNVL\RQ VD\IDQQ LVWHQPHVL VUHVLQFH YH\D KDWD \Q UHVHWOHQGLNWHQ VRQUD ROXDQWP
,0$3KDWDODUQG|QGUU
.XOODQP
array imap_errors(void );
%X IRQNVL\RQ VRQ LPDSBHUURUV oDUPQGD YH\D VD\IDQQ EDODQJFQGD ROXDQ WP ,0$3
KDWD PHVDMODUQQ ELU GL]LVLQL OLVWHOHU LPDSBHUURUV oDUOG ]DPDQ KDWD \Q VRQUDGDQ
temizlenir.
imap_alerts
%XIRQNVL\RQVD\IDQQLVWHQPHVLVUHVLQFHYH\DX\DU\QUHVHWOHQGLNWHQVRQUDROXDQWP
,0$3X\DUPHVDMODUQG|QGUU
.XOODQP
array imap_alerts(void );
imap_status
%XIRQNVL\RQELUSRVWDNXWXVXKDNNQGDGXUXPELOJLVLG|QGUU
.XOODQP
%XIRQNVL\RQGXUXPELOJLVLQLLoHUHQELUQHVQHG|QGUU8\JXQED\UDNODUXQODUGU
SA_MESSAGES - status-!PHVVDJHV
SRVWDNXWXVXQGDNLPHVDMVD\VQDVHWHGHU
SA_RECENT - status-!UHFHQW
SRVWDNXWXVXQGDNLVRQPHVDMVD\VQDVHWHGHU
SA_UNSEEN - status-!XQVHHQ
SRVWDNXWXVXQGDNL\HQLPHVDMVD\VQDVHWHGHU
SA_UIDNEXT - status->uidnH[W
SRVWDNXWXVXQGDNLVRQUDNLXLG
\HVHWHGHU
SA_UIDVALIDITY -SRVWDNXWXVXLoLQXLG
OHUDUWNX\JXQROPDGQGDVWDWXV->uidvalidity ' i
bir sabite set eder
SA_ALL -\XNDUGDNLOHULQKHSVLQLVHWHGHU
imap_utf7_decode
.XOODQP
imap_utf7_encode
.XOODQP
string imap_utf7_encode(string data);
ELW YHUL\L GHLWLULOPL 87)- PHWQLQH oHYLULU 'HLWLULOPL 87)-7 kodlama RFC 2060
E|OP
GHWDQPODQPWURULMLQDO87)-7 RFC1642'de belirtilmektedir).
imap_utf8
.XOODQP
0HWLQL87)
HoHYLULU5)&
GHWDQPODQGJLEL
imap_fetch_overview
9HULOHQPHVDMQEDONODUQGDNLELOJLQLQELUJ|]GHQJHoLULPLQLRNXU
.XOODQP
subject -PHVDMODUQNRQXVX
from -NLPLQJ|QGHUGLL
date -QH]DPDQJ|QGHULOGLL
message_id - Mesaj-ID ' si
uid -PHVDMQSRVWDNXWXVXQGDNL8,'
VL
msgno -PHVDMQSRVWDNXWXVXQGDNLVUDQXPDUDV
flagged -EXPHVDMED\UDNODQP
answered -EXPHVDMFHYDSODQGRODUDNED\UDNODQP
deleted -EXPHVDMVLOLQPHN]HUHED\UDNODQP
seen -EXPHVDMRNXQGXRODUDNED\UDNODQP
draft -EXPHVDMELUGUDIWRODUDNED\UDNODQP
imap_mail_compose
9HULOHQ]DUIYHJ|YGHE|OPOHULQHJ|UHELU0,0(PHVDM\DUDWU
.XOODQP
imap_mail
Bir e-PDLOPHVDMJ|QGHULU
.XOODQP
%XIRQNVL\RQXQNXOODQPXDQVDGHFH3+3
GHX\JXQGXU
0\64/)RQNVL\RQODU
mysql_affected_rows
%LU|QFHNL0\64/LOHPLQGHQHWNLOHQHQVDWUODUQVD\VQJHWLULU
.XOODQP
6RQVRUJX:+(5(
LROPD\DQELU'(/(7(VRUJXVXLVHWPND\WODUWDEORGDQVLOLQHFHNWLU
)DNDWEXIRQNVL\RQVIUGHHULG|QGUHFHNWLU
%XNRPXW6(/(&7LOHPOHULLoLQHWNLOLGHLOGLU6DGHFHND\WODUGHLWLUHQLOHPOHU]HULQGe
HWNLOLGLU %LU 6(/(&7
WHQ G|QHQ VDWUODUQ VD\VQ G|QGUPHN LoLQ P\VTOBQXPBURZV
NXOODQOU
mysql_change_user
$NWLIEDODQW]HULQGHNLRWXUXPDoPNXOODQF\GHLWLULU
.XOODQP
1RW %X IRQNVL\RQ 3+3 LOH ELUOLNWH RUWD\D oNW YH 0\64/ YH\D GDKD \NVHN
YHUVL\RQODUJHUHNWLULU
mysql_close
0\64/EDODQWVQNDSDWU
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
P\VTOBFORVH EHOLUOHQHQ OLQN WDQPOD\F LOH LOLNLGH EXOXQDQ ELU 0\64/ YHULWDEDQQD RODQ
OLQNLNDSDWU(HUOLQNWDQPOD\FEHOLUOHQPHPLVHVRQDoODQOLnk kabul edilir.
1RW6UHNOLROPD\DQDoNOLQNOHUEHWLPLQoDOPDVELWWLLQGHRWRPDWLNRODUDNNDSDQGLoLQ
bu genellikle gerekmez.
P\VTOBFORVHP\VTOBSFRQQHFWWDUDIQGDQROXWXUXODQVUHNOLOLQNOHULNDSDWPD\DFDNWU
gUQHN0\64/NDSDWPD|UQHL
1
2 <?php
3 $link = mysql_connect ("kraemer", "marliesle", "secret") {
4 or die ("Could not connect");
5 }
6 print ("Connected successfully");
7 mysql_close ($link);
8 ?>
9
mysql_connect
%LU0\64/VXQXFX\DELUEDODQWDoDU
.XOODQP
%DDUGXUXPXQGDSR]LWLIELU0\64/OLQNWDQPOD\FEDDUV]ONGXUXPXQGDELUKDWDPHVDM
dndrr.
P\VTOBFRQQHFW ELU 0\64/ VXQXFX\D ELU EDODQW NXUDU 'HLNHQOHULQ WP VHoLPOLGLU YH
EXQODU ND\EROXUVD YDUVD\ODQODU NDEXO HGLOLU
ORFDOKRVW
VXQXFX SURFHVV
H VDKLS RODQ
NXOODQFQQNXOODQFLVPLERSDVVZRUG
%DDUV]ONGXUXPXQGDIRQNVL\RQLVPLQH|QEHNOHPH
#
LOHKDWDPHVDMGXUGXUXODELOLU
1
2 <?php
3 $link = mysql_connect ("kraemer", "marliesle", "secret") {
4 or die ("Could not connect");
5 }
6 print ("Connected successfully");
7 mysql_close ($link);
8 ?>
9
mysql_create_db
%LU0\64/YHULWDEDQ\DUDWU
.XOODQP
P\VTOBFUHDWHBGE EHOLUOHQHQ OLQN WDQPOD\F LOH LOLNLGH EXOXQDUDN VXQXFXGD \HQL ELU
YHULWDEDQ\DUDWPDJLULLPLQGHEXOXQXU
gUQHN0\64/YHULWDEDQ\DUDWPD|UQHL
1
2 <?php
3 $link = mysql_pconnect ("kron", "jutta", "geheim") {
4 or die ("Could not connect");
5 }
6 if (mysql_create_db ("my_db")) {
7 print ("Database created successfully\n");
8 } else {
9 printf ("Error creating database: %s\n", mysql_error ());
10 }
11 ?>
12
$DGRUXX\JXQOXNLoLQP\VTOBFUHDWHGEGHNXOODQODELOLU
Bkz. mysql_drop_db().
mysql_data_seek
oVHOVRQXoSRLQWHU
QWDU
.XOODQP
P\VTOBGDWDBVHHNEHOLUOHQHQVDWUQXPDUDVQLDUHWHGHQEHOLUOLVRQXoWDQPOD\FLOHLOLNLOL
RODUDN 0\64/ VRQXFXQXQ LoVHO VDWU SRLQWHU
Q WDU P\VTOBIHWFKBURZ
D ELU VRQUDNL
oDUPEXVDWUDG|QHFHNWLU
5RZBQXPEHU
GDQEDOar.
gUQHN0\64/YHULDUDPD|UQHL
1
2 <?php
3 $link = mysql_pconnect ("kron", "jutta", "geheim") {
4 or die ("Could not connect");
5 }
6
7 mysql_select_db ("samp_db") {
8 or die ("Could not select database");
9 }
10
11 $query = "SELECT last_name, first_name FROM friends";
12 $result = mysql_query ($query) {
13 or die ("Query failed");
14 }
15
16 # fetch rows in reverse order
17
18 for ($i = mysql_num_rows ($result) - 1; $i >=0; $i--) {
19 if (!mysql_data_seek ($result, $i)) {
20 printf ("Cannot seek to row %d\n", $i);
21 continue;
22 }
23
24 if(!($row = mysql_fetch_object ($result)))
25 continue;
26
27 printf ("%s %s<BR>\n", $row->last_name, $row->first_name);
28 }
29
30 mysql_free_result ($result);
31 ?>
32
mysql_db_query
.XOODQP
3R]LWLIELU0\64/VRQXoWDQPOD\FYH\DKDWDGXUXPXQGDIDOVHVRUJXVRQXFXLOHG|QHU
P\VTOBGEBTXHU\ ELU YHULWDEDQ VHoHU YH EXQXQ ]HULQGH ELU VRUJX\X oDOWUU(HU VHoLPOL
OLQN WDQPOD\F EHOLUOHQPHPLVH IRQNVL\RQ 0\64/ VXQXFX\D DoN ELU OLQN EXOPD\
GHQH\HFHNWLUYHE|\OHELUOLQNEXODPD]VDGHLNHQVL]RODUDNP\VTOBFRQQHFWoDUOPJLEL
ELUWDQH\DUDWPD\GHQH\HFHNWLU
Bkz. mysql_connect().
$DGRUXX\JXQOXNLoLQP\VTONXOODQODELOLU
mysql_drop_db
.XOODQP
%DDUGXUXPXQGDWUXHEDDUV]ONGXUXPXQGDIDOVHG|QHU
P\VTOBGURSBGE EHOLUOHQHQ OLQN WDQPOD\F LOH LOLNLOL RODUDN WP YHULWDEDQQ VXQXFXGDQ
silmeyHoDOU
mysql_errno
gQFHNL0\64/LOHPLQGHNLKDWDPHVDMQQQXPDUDVQG|QGUU
.XOODQP
0\64/ YHULWDEDQQGDQ G|QHQ KDWDODU DUWN X\DU \D\QODPD]ODU %XQXQ \HULQH EX
IRQNVL\RQODUKDWDQXPDUDVQJHWLUPHGHNXOODQOU
1
2 <?php
3 mysql_connect("marliesle");
4 echo mysql_errno().": ".mysql_error()."<BR>";
5 mysql_select_db("nonexistentdb");
6 echo mysql_errno().": ".mysql_error()."<BR>";
7 $conn = mysql_query("SELECT * FROM nonexistenttable");
8 echo mysql_errno().": ".mysql_error()."<BR>";
9 ?>
10
Bkz. mysql_error()
mysql_error
gQFHNL0\64/LOHPLQLQKDWDPHVDMQQPHWQLQLJHULG|QGUU
.XOODQP
0\64/ YHULWDEDQQGDQ G|QHQ KDWDODU DUWN X\DU \D\QODPD]ODU %XQXQ \HULQH EX
IRQNVL\RQODUKDWDVWULQJ
LQLJHWLUPHGHNXOODQOUODU
1
2 <?php
3 mysql_connect("marliesle");
4 echo mysql_errno().": ".mysql_error()."<BR>";
5 mysql_select_db("nonexistentdb");
6 echo mysql_errno().": ".mysql_error()."<BR>";
7 $conn = mysql_query("SELECT * FROM nonexistenttable");
8 echo mysql_errno().": ".mysql_error()."<BR>";
9 ?>
10
Bkz. mysql_errno()
mysql_fetch_array
%LUDVVRFLDWLYHGL]LJLELELUVRQXoVDWUQJHWLULU
.XOODQP
*HWLULOHQVDWUDX\DQELUGL]LYH\DGDKDID]ODVDWU\RNVDIDOVHJHULG|QHU
P\VTOBIHWFKBDUUD\ P\VTOBIHWFKBURZ
XQ JHQLOHWLOPL ELU YHUVL\RQXGXU 6RQXo GL]LQLQ
VD\VDO J|VWHUJHOHULQGH VDNODQDQ YHUL\H HN RODUDN VDKD LVLPOHULQL DQDKWDU RODUDN NXOODQDUDN
LOLNLOLJ|VWHUJHOHUGHYHUL\LGHVDNODU
(HUVRQXFXQELUYH\DGDKDID]ODVWXQXD\QVDKDLVLPOHULQHVDKLSVHVRQVWXQ|QFHOLLDOU
$\QLVPLQGLHUVWXQODUQDHULPHNLoLQVWXQXQVD\OVDOLQGHNV
LPHYFXWROPDOYH\DVWXQ
LoLQELUDOLDVWDQPODQPDOGU
1
2 select t1.f1 as foo t2.f1 as bar from t1, t2
3
P\VTOBIHWFKBDUUD\
GHNLVHoLPOLLNLQFLGHLNHQRODQUHVXOWBW\SHELUVDELWWLUYHXGHHUOHUL
alabilir: MYSQL_ASSOC, MYSQL_NUM, ve MYSQL_BOTH. (Bu zellik PHP 3.0.7 ile
HNOHQPLWLU
DDKDD\UQWOELOJLLoLQEN]P\VTOBIHWFKBURZ
1
2 <?php
3 mysql_connect($host,$user,$password);
4 $result = mysql_db_query("database","select * from table");
5 while($row = mysql_fetch_array($result)) {
6 echo $row["user_id"];
7 echo $row["fullname"];
8 }
9 mysql_free_result($result);
10 ?>
11
mysql_fetch_field
%LUVRQXoWDQVWXQELOJLVLQLJHWLULUYHELUQHVQHHNOLQGHJHULG|QGUU
.XOODQP
P\VTOBIHWFKBILHOG EHOLUOL ELU VRUJX VRQXFXQGDNL VDKDODU KDNNQGD ELOJL HGLQPHN LoLQ
NXOODQODELOLU 6DKD RIVHW GHHUL EHOLUOHQPHPLVH P\VTOBIHWFKBILHOG WDUDIQGDQ KHQ]
JHWLULOPHPLRODQELUVRQUDki saha getirilir.
1HVQHQLQ|]HOOLNOHULXQODUGU
table -VWXQXQDLWROGXXWDEORQXQLVPL
max_length -VWXQXQPDNVLPXPX]XQOXX
not_null -HHUVWXQQXOORODPD]VDEXGHHU
GLU
primary_key -HHUVWXQELUSULPDU\NH\LVHEXGHHU
GLU
unique_key -HHUVWXQELUXQLTXHNH\LVHEXGHHU
GLU
multiple_key -HHUVWXQELUQRQ-XQLTXHNH\LVHEXGHHU
GLU
numeric -HHUVWXQVD\VDOVDEXGHHU
GLU
blob -HHUVWXQELU%/2%LVHEXGHHU
GLU
unsigned -HHUVWXQLDUHWVL]VHEXGHHU
GLU
zerofill -HHUVWXQ]HUR-ILOOHGLVHEXGHHU
GLU
Bkz. mysql_field_seek()
mysql_fetch_lengths
%LUVRQXoWDNLKHUoNWQQX]XQOXXQXJHWLULU
.XOODQP
myVTOBIHWFKBURZ
LQJHWLUGLLVRQVDWUGDNLKHUVDKDQQX]XQOXXQXLoHUHQELUGL]LG|QGUU
Hata durumunda false dner.
Bkz. mysql_fetch_row().
mysql_fetch_object
1HVQHIRUPXQGDELUVRQXoVDWUJHWLULU
.XOODQP
*HWLULOHQVDWUODLOLNLOLRODQ|]HOOLNOHULLOHELUQHVQHYH\DGDKDID]ODVDWU\RNVDIDOVHG|QGUU
P\VTOBIHWFKBREMHFW P\VTOBIHWFKBDUUD\
H oRN EHQ]HU 7HN IDUN ELU GL]L \HULQH WHN ELU
QHVQHQLQ JHUL G|QPHVLGLU 'ROD\O RODUDN EX YHUL\H RQODUQ RIVHWOHUL VD\ODU \DVDO ROPD\an
|]HOOLNLVLPOHULGLULOHGHLOVDGHFHVDKDLVLPOHUL\OHHULLOHELOHFHLDQODPQDJHOLU
6HoLPOL GHLNHQ RODQ UHVXOWBW\S ELU VDELWWLU YH X GHHUOHUL DODELOLU 0<64/B$662&
MYSQL_NUM, ve MYSQL_BOTH.
1
2 <?php
3 mysql_connect($host,$user,$password);
4 $result = mysql_db_query("database","select * from table");
5 while($row = mysql_fetch_object($result)) {
6 echo $row->user_id;
7 echo $row->fullname;
8 }
9 mysql_free_result($result);
10 ?>
11
mysql_fetch_row
%LUVRQXoVDWUQELUHQXPHUDWHGGL]LIRUPXQGDJHWLULU.
.XOODQP
*HWLULOHQVDWUODLOLNLOLELUGL]LYH\DGDKDID]ODVDWU\RNVDIDOVHJHULG|QHU
P\VTOBIHWFKBURZEHOLUOHQHQVRQXoWDQPOD\F\DEDORODUDNVRQXoWDQELUVDWUYHULJHWLULU
6DWU ELU GL]L IRUPXQGD G|QHU +HU VRQXo VWXQX RIVHW
GDQ EDOD\DFDN HNLOGH ELU GL]L
ofsette tutulur.
P\VTOBIHWFKBURZ
H\DSODQVRQUDNLoDUVRQXoNPHVLQGHNLVRQUDNLVDWUYH\DGDKDID]OD
VDWU\RNVDIDOVHGHHULQLQG|QGUHFHNWLU
mysql_field_name
%LUVRQXoWDNLEHOLUOHQHQELUVDKDQQLVPLQLJHWLULU
.XOODQP
6RQXoWDQPOD\F\DEDORODUDNVRQXoWDNLLNLQFLVDKDLVPLG|QHFHNWLU
$DGRUXX\JXQOXNLoLQP\VTOBILHOGQDPHGHNXOODQODELOLU
mysql_field_seek
.XOODQP
Bkz. mysql_fetch_field().
mysql_field_table
%HOLUWLOHQVDKD\LoLQGHEXOXQGXUDQWDEORQXQLVPLQLJHWLULU
.XOODQP
6DKDLoLQWDEORLVPLQLJHWLULU$DGRUXX\JXQOXNLoLQP\VTOBILHOGWDEOHGDNXOODQODELOLU
mysql_field_type
%LUVRQXoWDNLEHOLUWLOHQELUVDKDQQWLSLQLJHWLULU
.XOODQP
1
2 <?php
3 mysql_connect("localhost:3306");
4 mysql_select_db("wisconsin");
5 $result = mysql_query("SELECT * FROM onek");
6 $fields = mysql_num_fields($result);
7 $rows = mysql_num_rows($result);
8 $i = 0;
9 $table = mysql_field_table($result, $i);
10 echo "Your '".$table."' table has ".$fields." fields and ".$rows."
records <BR>";
11 echo "The table has the following fields <BR>";
12 while ($i < $fields) {
13 $type = mysql_field_type ($result, $i);
14 $name = mysql_field_name ($result, $i);
15 $len = mysql_field_len ($result, $i);
16 $flags = mysql_field_flags ($result, $i);
17 echo $type." ".$name." ".$len." ".$flags."<BR>";
18 $i++;
19 }
20 mysql_close();
21 ?>
22
$DGRUXX\JXQOXNLoLQP\VTOBILHOGW\SHGDNXOODQODELOLU
mysql_field_flags
%LUVRQXoWDNLEHOLUWLOHQVDKDLOHLOLNLOLED\UDNODUJHWLULU
.XOODQP
P\VTOBILHOGBIODJV EHOLUWLOHQ VDKDQQ VDKD ED\UDNODUQ G|QGUU %D\UDNODU WHN ELU ZRUG
HNOLQGH UDSRUODQU YH KHU ED\UDN ELU EROXNOD ELUELULQGHQ D\UOPDPWU %X QHGHQOH
H[SORGHNXOODQODUDNG|QGHHULE|OQHELOLU
(HU PHYFXW 0\64/ YHUVL\RQX EXQODU GHVWHNOH\HFHN NDGDU \HWHUOL\VH X ED\UDNODU
UDSRUODQU QRWBQXOO SULPDU\BNH\ XQLTXHBNH\ PXOWLSOHBNH\ EORE XQVLJQHG
"zerofill", "binary", "enum", "auto_increment", "timestamp".
$DGRUXX\JXQOXNLoLQP\VTOBILHOGIODJVGHNXOODQODELOLU
mysql_field_len
%HOLUWLOHQVDKDQQX]XQOXXQXG|QGUU
.XOODQP
mysql_free_result
6RQXoEHOOHLERDOWU
.XOODQP
%HWLPLQoDOPDVQGDQGROD\EHOOHNoRNGROGX\VDVDGHFHP\VTOBIUHHBUHVXOW
QoDUOPDV
yeterlidir. BelirWLOHQ VRQXo WDQPOD\F LoLQ LOJLOL WP VRQXo EHOOHL RWRPDWLN RODUDN
ERDOWODFDNWU
$DGRUXX\JXQOXNLoLQP\VTOBIUHHUHVXOWGDNXOODQODELOLU
mysql_insert_id
%LU|QFHNL,16(57LOHPLQGHQROXDQLG
\LJHWLULU
.XOODQP
0\64/VRQXoVDKDODUQOLVWHOHU
.XOODQP
int mysql_list_fields(string database_name, string table_name, int
[link_identifier] );
P\VTOBOLVWBILHOGVYHULOHQELUWDEOHQDPHKDNNQGDELOJLJHWLULU'HLNHQOHUYHULWDEDQLVPL
ve tablo ismidir. mysql_field_flags(), mysql_field_len(), mysql_field_name(), ve
P\VTOBILHOGBW\SHWDUDIQGDQNXOODQODELOHFHNELUVRQXoSRLQWHU
G|QGUU
$DGRUXX\JXQOXNLoLQP\VTOBOLVWILHOGVGDNXOODQODELOLU
mysql_list_dbs
MySQL sunucXGDX\JXQRODQYHULWDEDQODUQOLVWHOHU
.XOODQP
int mysql_list_dbs(int [link_identifier] );
$DGRUXX\JXQOXNLoLQP\VTOBOLVWGEVGHNXOODQODELOLU
mysql_list_tables
%LU0\64/YHULWDEDQQGDNLWDEORODUOLVWHOHU
.XOODQP
$DGRUXX\JXQOXNLoLQP\VTOBOLVWWDEOHVGDNXOODQODELOLU
mysql_num_fields
6RQXoWDNLVDKDODUQVD\VQYHULU
.XOODQP
P\VTOBQXPBILHOGVELUVRQXoNPHVLQGHNLVDKDODUQVD\VQG|QGUU
$DGRUXX\JXQOXNLoLQP\VTOBQXPILHOGVGDNXOODQODELOLU
mysql_num_rows
6RQXoWDNLVDWUODUQVD\VQOLVWHOHU
.XOODQP
P\VTOBQXPBURZVELUVRQXoNPHVLQGHNLVDWUODUQVD\VQG|QGUU
$DGRUXX\JXQOXNLoLQP\VTOBQXPURZVGDNXOODQODELOLU
mysql_pconnect
%LU0\64/VXQXFX\DVUHNOLELUEDODQWDoDU
.XOODQP
%DDU GXUXPXQGD SR]LWLI ELU 0\64/ OLQN WDQPOD\F YH\D KDWD GXUXPXQGD IDOVH GHHUL
dndrr.
P\VTOBSFRQQHFW ELU 0\64/ VXQXFX\D ELU EDODQW NXUDU 7P GHLNHQOHU VHoLPOLGLU YH
HHU EXQODU ROPD]VD YDUVD\ODQODU NDEXO HGLOLU
ORFDOKRVW
VXQXFX SURFHVV
LQ VDKLEL RODQ
NXOODQFQQNXOODQFLVPLERSDVVZRUG
+RVWQDPH VWULQJ
L ELU SRUW QXPDUDV GD LoHUHELOLU gU KRVWQDPHSRUW YH\D ELU VRNHWH ELU
path r. localhost iin ":/path/to/socket"
Not: ":port" iin destek 3.0B4'de eklendi. ":/path/to/socket" iin destek 3.0.10'de eklendi.
P\VTOBSFRQQHFWP\VTOBFRQQHFW
HoRNEHQ]HU$QFDNLNLWHPHOIDUNYDUGU
ON RODUDN EDODQOGQGD IRQNVL\RQ D\Q KRVW XVHUQDPH YH SDVVZRUG LOH DoN ELU Oink
DUD\DFDNWU(HUELUWDQHEXOXQXUVDRQXQLoLQ\HQLELUEDODQWDoPDN\HULQHELUWDQPOD\F
dnecektir.
'LHU IDUN 64/ VXQXFX\D RODQ EDODQW EHWLPLQ oDOPDV ELWWLLQGH NDSDWOPD\DFDNWU
%XQXQ \HULQH OLQN JHOHFHNWHNL NXOODQPODU LoLQ DoN NDODFDNWU P\VTOBFORVH
P\VTOBSFRQQHFWWDUDIQGDQNXUXODQOLQNLNDSDWPD\DFDNWU
mysql_query
.XOODQP
P\VTOBTXHU\ VXQXFXGDNL R DQ DNWLI RODQ YH EHOLUWLOHQ OLQN WDQPOD\F LOH LOLNLOL RODQ
YHULWDEDQQD ELU VRUJX J|QGHULU (HU OLQNBLGHQWLILHU EHOLUWLOPHPLVH VRQ DoODQ OLQN NDEXO
HGLOLU +LoELU OLQN DoN GHLOVH IRQNVL\RQ P\VTOBFRQQHFW GHLNHQVL] oDUOP JLEL ELU
OLQNNXUPD\DoDOUYHRQXNXOODQU
6RUJXVWULQJ
LELUQRNWDOYLUJOLOHELWPHPHOLGLU
P\VTOBTXHU\ VRUJXQXQ EDDUO ROXS ROPDPDVQD J|UH 758( QRQ-zero) veya FALSE
G|QGUU 758( G|Q GHHUL VRUJXQXQ \DVDO ROGXXQX YH VXQXFX WDUDIQGDQ
oDOWUODELOHFHLQL J|VWHULU(WNLOHQHQ \D GD JHUL G|QHQ VDWU VD\V KDNNQGD KLoELU H\
LoHUPH] %LU VRUJX KLoELU VDWU HWNLOHPHGLL YH\D KLoELU VDWU G|QGUPHGLL KDOGH EDDUO
olabilir.
$DGDNL VRUJX V\QWDFWLF RODUDN JHoHUVL]GLU %X QHGHQOH P\VTOBTXHU\ EDDUV] ROXU YH
FALSE dndrr:
rnek: mysql_query()
1
2 <?php
3 $result = mysql_query ("SELECT * WHERE 1=1")
4 or die ("Invalid query");
5 ?>
6
$DGDNL VRUJX HHU P\BFRO P\BWEO WDEORVXQGD ELU VWXQ GHLOVH VHPDQWLN RODUDN
geersizdir. Bu nedenle mysql_query() geersizdir ve FALSE dndrr:
rnek: mysql_query()
1
2 <?php
3 $result = mysql_query ("SELECT my_col FROM my_tbl")
4 or die ("Invalid query");
5 ?>
6
(HUVRUJXQXQLOLNLOLROGXXWDEORODUDHULLPL]QLQL]\RNVDP\VTOBTXHU\EDDUV]RODFDNWU
ve FALSE dndrecektir.
6RUJXQXQ EDDUO ROGXX YDUVD\OUVD NDo WDQH VDWUQ HWNLOHQGLLQL EXOPDN LoLQ
P\VTOBDIIHFWHGBURZV oDUODELOLU '(/(7( ,16(57 5(3/$&( YH\D 83'ATE
LOHPOHUL LoLQ 6(/(&7 LOHPOHUL LoLQ P\VTOBTXHU\ P\VTOBUHVXOW
D JHoLUHELOHFHLQL]
\HQL ELU VRQXo WDQPOD\F G|QGUU 6RQXo NPHVL\OH \DSWQ]GD P\VTOBIUHHBUHVXOW
XQ
oDUOPDV\ODLOLNLOHQGLULOPLND\QDNODUERDOWDELOLUVLQL]
mysql_result
.XOODQP
mysql_result(), bir MySQL sonu kPHVLQGHQ ELU KFUHQLQ LoHULLQL G|QGUU 6DKD
GHLNHQL VDKDQQ RIVHWL VDKDQQ LVPL YH\D VDKDQQ WDEORVX QRNWD VDKDQQ LVPL RODELOLU
6DKD,VPL7DEOR,VPL(HUVWXQLVPLDOLDV
ODQPVD
VHOHFWIRRDVEDUIURP
VWXQLVPL
\HULQHDOLDVNXOODQOU
%\N VRQXo NPHOHUL ]HULQGH oDOOGQGD WP VDWU JHWLUHFHN IRQNVL\RQODUGDQ ELUL
NXOODQOPDOGU DDGD EHOLUWLOGLL JLEL %LU IRQNVL\RQ oDUPQGD EX IRQNVL\RQODU ELUGHQ
oRN KFUHQLQ LoHULLQL G|QGUHFHLQGHQ EXQODU P\VTOBUHVXOW
WDQ oRN GDKD K]O RODFDNWU
$\UFD VDKD GHLNHQL LoLQ VD\VDO ELU GHHU EHOLUOHPHQLQ ELU VDKD LVPL YH\D
6DKD,VPL7DEOR,VPLGHLNHQLEHOLUOHPHGHQGDKDK]OROGXXXQXWXOPDPDOGU
P\VTOBUHVXOW
oDUPD VRQXo NPHVL\OH LOJLOHQHQ GLHU IRQNVL\RQODUQ oDUOPDV\OD
NDUWUOPDPDOGU
0\64/YHULWDEDQVHoHU
.XOODQP
%DDUGXUXPXQGDWUXHKDWDGXUXPXQGDIDOVHG|QHU
P\VTOBVHOHFWBGE VXQXFXGDNL EHOLUWLOHQ OLQN WDQPOD\F LOH LOLNLOL RODQ R DQNL DNWLI
YHULWDEDQQ VHW HGHU (HU KLoELU OLQN WDQPOD\F EHOLUOHQPHPLVH VRQ DoODQ OLQN NDEXO
edilir. HiELUOLQNDoNGHLOVHIRQNVL\RQP\VTOBFRQQHFWoDUOPJLELELUOLQNNXUPD\DYH
EXQXNXOODQPD\DoDODFDNWU
P\VTOBTXHU\
HVRQUDGDQJHOHQKHUoDUPDNWLIYHULWDEDQ]HULQGH\DSODFDNWU
$DGRUXX\JXQOXNLoLQP\VTOBVHOHFWGEGHNXOODQODELOLU
mysql_tablename
6DKDQQWDEORLVPLQLJHWLULU
.XOODQP
gUQHN0\VTOBWDEOHQDPH|UQHL
1
2 <?php
3 mysql_connect ("localhost:3306");
4 $result = mysql_list_tables ("wisconsin");
5 $i = 0;
6 while ($i < mysql_num_rows ($result)) {
7 $tb_names[$i] = mysql_tablename ($result, $i);
8 echo $tb_names[$i] . "<BR>";
9 $i++;
10 }
11 ?>
12
2.7 POP3 Sunucu: Qpopper
Qpopper pek ok hemen hemen btn e-posWD LVWHPFL \D]OPODU LOH X\XPOX GQ\DQQ HQ
SRSOHU 323 VXQXFX \D]OPGU 4SRSSHU LoHULVLQGH VHQGPDLO JLEL ELU 07$ \D]OP
LoHUPH]YHVWDQGDUWPHVDMWUDQVIHU\D]OPODUQQKHSVLLOHX\XPLoHULVLQGHoDOU
4SRSSHU GQ\D ]HULQGHNL SHN oRN NDWOPFQQ UQ YH *3/ OLVDQV LOH GDWODQ ELU
\D]OPGU 4SRSSHU RULMLQDOGH 8& %HUNHOH\ QLYHUVLWHVLQGH NRGODQPD\D EDODP YH
DUGQGDQ48$/&200ILUPDVWDUDIQGDQGHVWHNOHQPH\HYHGDWOPDVQDEDODQPWU
Qpopper pek ok VWDQGDUW 8QL[/LQX[ \D]OP JLEL FRQILJXUH PDNH PDNH LQVWDOO
NRPXWODU LOH NXUXODELOLU &RQILJXUH NRPXWX NXUXOGXX VLVWHPH HQ X\JXQ NXUXOXP
SDUDPHWUHOHULQL UHWLUNHQ PDNH NRPXWX ND\QDN NRGX GHUOHPH\H PDNH LQVWDOO LVH GHUOHQPL
oDOWUODELOLUGRV\DODUX\JXQ\HUOHUH\HUOHWLUPHNOHVRUXPOXGXU
4SRSSHU LOH ELUOLNWH JHOHQ GRNPDQWDV\RQ ND\QDN NRG DDFQGD GRF GL]LQLQGH \HU DOU YH
KHPHQKHUNRQXGDD\UQWOELOJL\HEXUDGDQXODPDNPPNQGU
4SRSSHU GHUOHQPHVL VUDVQGD GLNNDW HGLOPHVL JHUHNHQ KXsuslardan bir tanesi genelde Unix
VLVWHPOHULQ KHSVLQGH \D\JQ RODQ VKDGRZ \HWNLOHQGLUPH VLVWHPL NXOODQOGQGD FRQILJXUH
EHWLPLDDGDNLHNLOGHROPDOGU
./configure --enable-specialauth
07$<D]OP6HQGPDLO
Internet ve bilJLVD\DUDODUQQLONNXOODQOPD\DEDODQG\OODUGDQEHULHOHNWURQLNSRVWDKHS
HQ \D\JQ NXOODQODQ VHUYLVOHULQ EDQGD JHOPLWLU 6DGHFH ELU PDNLQHGHQ GLHULQH ELU \D]
WDEDQOGRV\D\WDPDNYHNXOODQFQQSRVWDNXWXVXQDEUDNPDNODEDOD\DQVHUYLVGaha sonra
ELOJLVD\DU DODUQQ GQ\DFD \D\JQODPDVQGDQ VRQUD oRN NRPSOHNV URXWLQJ
JHUHNVLQLPOHULQHNVWODPDODUDJYHQOLHYHK]DLKWL\DoGX\PXWXU
3RVWDDOYHULLQGHSHNoRNVWDQGDUWPHYFXWWXU%XQODUGDQHQ\D\JQODUPDNLQHEDPV]ELU
transfeU \|QWHPLQL DoNOD\DQ 5)& \DNQ ]DPDQGD \D\JQODDQ oRNOX RUWDP SRVWD YH
&&,77WDUDIQGDQWDQPODQDQ;
GU
%LU SRVWDQQ NXOODQFQQ H-SRVWD SURJUDPQGDQ VRQUD LOHWLOPHVLQL VDOD\DQ SHN oRN SURJUDP
8QL[ GQ\DVQGD X]XQ \OODUGU NXOODQOD JHOPLWLU %XQODUQ HQ HVNLVL VPDLO SHN JHOLPH\H
DoN ROPD\DQ \DSV LOH JQP] VLVWHPOHULQGH VDGHFH NoN X\JXODPDODU LoLQ X\JXQ
ROPDNWDGU'Q\D]HULQGHEHONLGHHQoRNNXOODQODQSRVWDWUDQVIHUSURJUDPRODQVHQGPDLO
LVH NRQILJUDV\RQXQGDNL oHLWOLOLN YH \D\JQ ROPDQQ JHWLUGLL DYDQWDMODUQQ \DQ VUD
KDQWDOO JYHQOLN VRUXQODU PRGOHU ROPDPDV JLEL GH]DYDQWDMODU \]QGHQ \DYD \DYD
WHUN HGLOPH\H EDODPWU %LU GLHU EHQ]HUL X\JXODPD GD |]HOOLNOH JYHQOLL YH SHUIRUPDQV
ile dikkat eken qmail D\Q ]DPDQGD PRGODULWH NROD\ NXOODQP JLEL |]HOOLNOHUL LOH GH J|]
GROGXUPDNWDGU
3RVWDF \XNDUGD EDKVL JHoHQ KHU LNL 07$ 0DLO 7UDQVIHU $JHQW \D]OP LOH GH VRUXQVX]
oDODELOPHNWHGLU %X E|OPGH ELU VWDQGDUW RODQ YH GQ\DQQ HQ oRN WHUFLK HGLOHQ posta
WUDQVIHU\D]OPRODQVHQGPDLOLQFHOHQHFHNWLU
%LU HOHNWURQLN SRVWD JHQHOGH NXOODQFQQ J|QGHUGLL PHVDMQ \HU DOG ELU J|YGH PHVDMQ
QHUHGHQ JHOGLLQL NLPH JLGHFHLQL QDVO JLGHFHLQL YE DoNOD\DQ ELU GH EDON E|Omnden
ROXXU7LSLNELUPHVDMEDOXQDEHQ]HU
%DND ELU VLVWHPGHNL NXOODQF\D 7&3,3 ]HULQGHQ H-posta gnderirken genelde SMTP
VLPSOH PDLO WUDQVIHU SURWRFRO DG YHULOHQ GDHPRQ NXOODQOU 6073 PHVDM J|QGHULUNHQ
JHQHOOLNOH DOFQQ PDNLQHVLQH GLUHN ELU EDODQW JHUoHNOHWLULU YH NDU taraftaki SMTP
\D]OPLOHNRRUGLQHELUHNLOGHPHVDMWUDQVIHUHGHU0HVDMJ|QGHUHQPDNLQHQLQDOFQQ
PDNLQHVLQHPHVDM\ROODPDVQDURXWLQJGHQLOLU%XHVQDGD6073\D]OPNDUWDUDIDJLGHQ
\ROX EXOPDQQ \DQ VUD KDWD NRQWURO K] YH ND\QDN RSWLmizasyonu da yapar. Internet
]HULQGHPHVDMNDUWDUDIDXODWUPDVUDVQGD\DSODQLOHPOHUVWDQGDUWELU7&3,3SDNHWLQLQ
\DSWQGDQIDUNOGHLOGLU<DSODQLOHPNDUWDUDIQ,3QXPDUDVQELU'16VXQXFXVXQGDQ
zmlemek ve paketi gndermekten ibareWWLU <ROODGP] H-SRVWD NDU WDUDIQ VXQXVXQD
XODWQGD RUDGDNL LVLP VXQXFXVXQXQ '16 YHULWDEDQQGD 0; LOH EHOLUWLOPL ELU H-posta
VXQXFXVXQD\|QOHQGLULOLUYHEXUDGDGDEXPHVDMLoDGDGDWOU
6HQGPDLO
LQ NXUXOXPX LNL WHPHO DDPDGDQ ROXXU (Q ]RU NVP NRQILJUDV\RQ GRV\DVQQ
ROXWXUXOPDVGU %X GRV\D VHQGPDLO DoOUNHQ RNXQDQ YH LOH\LL LoLQ JHUHNOL PDLOHU
WDEORODUQ ROXWXUPDNOD J|UHYOLGLU %X GRV\DQQ KD]UODQPDV NRPSOHNV ELU LOHP ROPDVQD
UDPHQGDKD|QFHEDNDELULVLWDUDIQGDQKD]UODQPELUNonfigrasyon muhtemelen kurulan
VLVWHPOHX\XPJ|VWHUHFHNWLUNLQFLDDPDLVHJHUoHNNXUXOXPXQ\DSOPDVHNOLQGHGLU
Sendmail' in btn kodu src dizini ierisindedir. Sendmail pek ok platformda derlenmek
]HUHKD]UODQGLoLQEHUDEHULQGHJHOHQPDNHVHQGPDLODGONDEXNEHWLLEXOXQXODQVLVWHPL
WHVWHGHUHNHQX\JXQGHUOHPH\|QWHPLQLEHOLUOH\HFHNWLU%XEHWLLNXOODQPDNLoLQVDGHFHVK
PDNHVHQGPDLO NRPXWXQX YHUPHN \HWHUOLGLU X]XQ VUHQ ELU GHUOHPH LOHPLQLQ DUGQGDQ
senGPDLODGOELUoDOWUODELOLUGRV\D\DUDWODFDNWU
dDOWUODELOLU GRV\D \DUDWOGNWDQ VRQUD EX GRV\D\ X\JXQ \HUOHUH \HUOHWLUPHN LoLQ VK
PDNHVHQGPDLO LQVWDOO NRPXWX oDOWUOU %X NRPXW oDOWUODELOLU GRV\D\ XVUVELQ DOWQD
\HUOHWLUHFHN XVUELQQHZDOLDVHV YH XVUELQPDLOT GDQ GD XVUVELQVHQGPDLO
D ELU EDODQW
JHUoHNOHWLUHFHNWLU $\UFD JHUHNOL PDQ \DUGP GRV\DODUQ GD PDQ YHULWDEDQQD GDKLO
edecektir.
.RQILJUDV\RQGRV\DODUYHoDOWUODELOLUGRV\DODU
%X E|OPGH NXUXOXP VRQUDV ROXWXUXODQ |QHPOL GRV\DODU KDNNQGD DoNODPDODU \HU
DOPDNWDGU
XVUVELQVHQGPDLO6HQGPDLO
LQoDOWUODELOLUGRV\DV%XGRV\DQQVXLGURRW\HWNLVL
ROPDOGU *YHQOLN QHGHQOHULQGHQ GROD\ XVU XVUVELQ GL]LQOHUL LVH PRG LOH
URRWNXOODQF\DDLWROPDOGU
/etc/sendmail.cf : %XGRV\DVHQGPDLO
LQNRQILJUDV\RQGRV\DVGU
XVUELQQHZDOLDVHV 6LVWHPGH ELU \|QOHQGLUPH EHOLUWHQ HWFDOLDVHV GRV\DVQQ DNWLI
KDOH JHWLULOPHVLQL VDODU *HQHOGH XVUVELQVHQGPDLO GRV\DVQD EDVLW ELU OLQNWHQ
ibarettir.
HWFDOLDVHV6LVWHPGHNLELUNXOODQFQQSRVWDODUQQEDNDELUNXOODQF\D\DGDEDND
ELUVXQXFXGDNLELUNXOODQF\D\|QOHQGLULOPHVLDPDFLOHNXOODQOU
$\UFD EX GRV\DQQ KHU DoOWD oDOWUOPDV LoLQ HHU VLVWHP YDUVD\ODQ RODUDN D
EDODQWOPHWLQRUWDPGDDoO\RUVDXNRPXWYHULOPHOLGLU
ln -s /etc/rc.d/init.d/sendmail /etc/rc.d/rc3.d/S67sendmail
6HQGPDLOND\WGRV\DODUWXWXOPDV
HTML, InterneW WDUD\FODUQQ NXOODQG VWDQGDUW ELU GLO ROXS SURMHGH +70/ GLOLQGHQ
DDGDV|]JHoHQNVPODUNXOODQODUDN\DUDUODQOPWU
<FORM>
+70/ VD\IDV LoHUVLQGH NXOODQFGDQ ELOJL DOPDN LoLQ NXOODQODQ IRUPODUQ EDODQJo
belirtecidir. INPUT, SELECT ve 7(;7$5($ JLEL +70/ IRQNVL\RQODU EX IRUP LoLQGH
ELOJLDNWDUPDPDF\ODNXOODQODELOLU
%LU+70/IRUPXLoLQGHoHLWOLNRQWUROOHUYHYHULRODELOHQ|]HOELUVD\IDDODQGU
<FORM ACTION>
)RUPXQLOHQPHN]HUHJ|QGHULOHFHLVXQXFXLVPLQLEHOLUWPHNLoLQNXOODQOU
<FORM METHOD>
9HUL DNWDUP PHWRWODU RODQ 3267 YH\D *(7 WHQ KDQJLVLQLQ NXOODQODFDQ EHOLUWPHN
LoLQNXOODQOU
<INPUT>
)RUPLoLQGHQWHNELUYHULJLULLDODQ\DUDWPDNLoLQNXOODQOU
<INPUT TYPE>
,1387!LOHDOQDQYHULQLQWLSLQLEHOLUOHPHNLoLQNXOODQOU
gUQHNELUW\SHRODUDN3$66:25'YHULOHELOLU%|\OHELUNXOODQPGDJLULOHQYHULHNUDQGD
**** gibi sembolik bir ifade olarak gzkr.
<INPUT NAME>
,1387!LOHDOQDQYHUL\LSURJUDPLoLQGHWDQPOD\FELULVLPYHUPHNLoLQNXOODQOU
<INPUT VALUE>
,1387!LOHDOQDQYHUL\HYDUVD\ODQELUGHHUDWDPDNLoLQNXOODQOU
<INPUT SIZE>
,1387!YHULVLQLQE\NOQDQODWPDNLoLQNXOODQOU
<SELECT>
%LU IRUP LoLQGH ELUGHQ ID]OD VHoHQHNWHQ ROXDQ ELU YHUL NPHVLQGHQ VHoLP \DSPDN
DPDF\ODNXOODQOUgUQHNELU6(/(&7!NXOODQPDDGDNLJLELGLU
<SELECT NAME=isim>
<OPTION> p Kutusu </OPTION>
<OPTION> Gelen Kutusu</OPTION>
<OPTION> Giden Kutusu</OPTION>
</SELECT>
<SELECT NAME>
6(/(&7!HOHPDQQDVHPEROLNELULVLPDWDPDNLoLQNXOODQOU
<SUBMIT>
)RUP LoLQH JLULOHQ YHULOHULQ WHN ELU WX NXOODQPQGDQ VRQUD VXQXFX\D J|QGHULOPHVLQL
VDOD\DQHOHPDQGU
<SUBMIT VALUE>
68%0,7!HOHPDQQDYDUVD\ODQELULVLPDWDPDNLoLQNXOODQOU
3URMHGH NXOODQODQ |UQHN ELU IRUP VD\ID WDVDUPQQ +70/ NRGX LoLQGHQ QDVO \DSOG
DDGDNL+70/VD\IDVNRGXQGDQJ|UOHELOLU
%LU 323 VXQXFX ]HULQH NXUXODQ ELU \D]OP LOH VLVWHPGHNL NXOODQFODUQ H-SRVWDODUQ
RNXPDODU J|QGHUPHOHUL HNOHQWL HNOH\LS DODELOPHOHUL H-SRVWDODUQ GL]LQOHUH J|UH RUJDQL]H
HGHELOPHOHULVDODQPDVDPDoODQPWU%XDPDoGRUXOWXVXQGDNXOODQFODUDDGUHVGHIWHULQGH
LOHWLLPGH EXOXQGXNODU NLLOHULQ ELOJLOHULQL ND\GHWPHVL QRW GHIWHULQGH ED] NoN QRWODU
DODELOPHVL ELU ERRNPDUN \|QHWLFLVLQGH LVH VHYGLL VLWHOHUL ND\GHGHELOPHVL JLEL ED] NoN
\D]OPODU GD VLVWHPH HQWHJUH HGLOPHOLGLU .XOODQFQQ PHVDIH NDYUDPQ DDUDN GQ\DQQ
LVWHQLOHQ \HULQGHQ ELU ZHE WDUD\F KDULFLQGH KHUKDQJL ELU HN \D]OPD LKWL\Do GX\PDGDQ
VLVWHPHEDODQDELOPHVLYHH-SRVWDODUQRNX\XSJ|QGHUHELOPHVLHQWHPHODPDoWU
3URJUDP KHU VHYL\HGHQ NXOODQFQQ NXOODQGQ GQHUHN DUDELULP PPNQ ROGXNoD EDVLW
YHNHQGLNHQGLVLQLDoNODUQLWHOLNOHUHVDKLSROPDOGU
%XEDODPGDQLYHUVLWHOHU,QWHUQHW6HUYLV6DOD\FODU:HEDODQVDOD\FODUKHGHINLWOHGLU
Temmuz 2000 tarihi itibari ile program aralarQGD %LONHQW 0DUPDUD 0XOD $QNDUD
hQLYHUVLWHVLJLELE\NQLYHUVLWHOHULQGHEXOXQGXXQLYHUVLWHGHDNWLIRODUDNNXOODQOPDNWD
YH WDP VD\V ELOLQPHPHNOH ELUOLNWH GQ\D oDSQGD \DNODN NDGDU ,QWHUQHW 6HUYLV
6DOD\F YH ZHE DODQ VDOD\FQQ VXQXFXVXQGD EXOXQGXX WDKPLQ HGLOPHNWHGLU 3URJUDP
/LQX[ \D]OPODUQQ PHUNH]L VD\ODELOHFHN KWWSZZZIUHVKPHDWQHW YH
KWWSZZZOLQX[DSSVFRP
GD OLVWHOHQPHNWH YH GQ\DQQ HQ SRSOHU ,QWHUQHW \D]OP
ROPD XQYDQQ ND]DQPWU %X VUDODPDGD 3RVWDF K]OD \NVHOPHNWHGLU $PDo 3RVWDF
QQ
GQ\DQQ HQ SRSOHU ZHEPDLO \D]OP ROPDVGU NL SURJUDPQ GX\XUXOGXX D\ON VUHGH
J|UOHQLYPHGHYDPHWWLLWDNGLUGHVHQH]DUIQGDEXDPDoJHUoHNOHHFHNWLU
*HUHNVLQLP7DQP
6LVWHPH JLUHUNHQ JLULOHQ NXOODQF DG YH LIUHVL VXQXFX PDNLQH ]HULQGHNL 323 sunucuda
NRQWUROHGLOPHOLYHHHUELOJLOHUGRUXLVHVLVWHPHJLULVDODQPDOGU$NVLWDNGLUGHELUKDWD
PHVDMYHULOPHOLGLU
.XOODQFELOJLOHULQLJLUGLNWHQVRQUDLONRODUDN*HOHQ.XWXVX
QD\|QOHQGLULOPHOLYHEXUDGDHQ
son gelen mesaj en stte gsterilPHOLGLU *HOHQ .XWXVXNXOODQFQQ323VXQXFX]HULQGHQ
DOQDELOHFHN PHVDMODUQQ EDON ELOJLOHULQL RNX\DUDN EXQODU J|VWHUPHOL |]HOOLNOH 7UNoH
NDUDNWHUGH ROXDQ N|W oNW JLEL VRUXQODU ROPDPDOGU $\UFD *HOHQ .XWXVXQGDNL PHVDMODU
LVWHQLOHQ ELU EDND GL]LQH NRS\DODQDELOPHOLGLU .XOODQFQQ KDQJL SRVWD NXWXVXQGD ROGXX
WRSODPGD NDo PHVDM EXOXQGXX JLEL ELOJLOHU VLVWHPH GDKLO ROGXX DQGD NXOODQF\D
gsterilmelidir.
6LVWHPGHELUGHQID]ODSRVWDNXWXVXDoDELOPH|]HOOLLEXOXQPDOGU$oODQKHUELUSRsta kutusu
GLHU NXWXODU LOH LOHWLLPH JHoHELOPHOL YH DUDODUQGD PHVDM WUDQVIHUL \DSODELOPHOLGLU
VWHQLOPH\HQ PHVDMODU GLUHN VLOPHN \HULQH d|S .XWXVXQD WDQPDO LVWHQLOGLLQGH GH d|S
.XWXVXERDOWOPDNVXUHWLLOHEXPHVDMODUGDQWDPDPHQNXUWXOPDNPPNQ
ROPDOGU
.XOODQF\D JHOHQ KHUKDQJL ELU PHVDMGD ELU HNOHQWL GRV\D YDU LVH EX GRV\DQQ DG PHVDM
gsterilirken sorunsuz gsterilmeli ve ister ise kendi makinesine indirmesine izin verilmelidir.
(HU NXOODQF LVWHUVH PHVDMQ NHQGLVLQL GH ELU WNODPD LOH makinesine kaydedebilmeli veya
\D]FoNWVDODELOPHOLGLU
0HVDMJ|QGHUPHNVPQGDNXOODQFNHQGLPDNLQHVLQGHQH-SRVWDVQDELUYH\DGDKDID]ODGRV\D
HNOH\HELOPHOL GRV\D HNOHPH VUDVQGD KDWDODU HQJHOOHPHN LoLQ 0% JLEL ELU HEDW
VQUODQGUPDVROPDOGU*|QGHULOHQPHVDMQKHUKDQJLELUH-posta istemcisi ile okunabilmesi
LoLQEXNRQXGDNRQXODQVWDQGDUWODUDX\JXQROPDOGU
.XOODQF LOHWLLPGH EXOXQGXX NLLOHULQ WHOHIRQ QXPDUDV H-posta adresi gibi bilgilerini
XQXWPDPDV LoLQ ELU DGUHV GHIWHUL EXOXQPDO LVWHQLUVH KHUKDQJL ELU ND\W LoLQ HN QRWODU
DOQDELOPHOLGLU
.XOODQFQQVN]L\DUHWHWWLLVLWHOHULND\GHGHELOPHVLLoLQELUERRNPDUN\|QHWLFLVLVDODQPDO
YHKHUELUVLWHLoLQHNQRWODUDOQDELOPHOLGLU
3URJUDP ]HULQGH oDODFD VXQXFXGD oRN ID]OD ND\QDN WNHWPHPHOL YH GRQDQP PDOL\HWLQL
PPNQROGXNoDDDODUGDWXWPDOGU
Internet zerinde istemci-VXQXFX FOLHQWVHUYHU PDQWNWD oDODFDN RODQ VLVWHP LNL D\U
\DSGDQ ROXXU VWHPFL YH 6XQXFX %X LNL D\U DOW VLVWHP ELUELUL\OH EDODQWO RODUDN JHUHNOL
YHULQLQJLULYHoNQRUJDQL]HHGLSLVWHQLOHQLOHPOHULQJHUoHNOHPHVLQLVDODU
<D]OPQWDVDUPDDPDVQGD*HUHNVLQLP7DQPQGDNLPDGGHOHUJ|]DUGHGLOHUHNEXWUELU
VLVWHPLQ QH JLEL ELU \D]OP NRPELQDV\RQX LOH WDVDUODQDELOHFHL DUDWUOPWU $DGD HOGH
ediOHQED]PXKWHPHONRPELQDV\RQODUJ|UOPHNWHGLU
<XNDUGD J|UOHQ LON PDGGH 06 :LQGRZV SODWIRUPXQGD WDVDUODQP GLHU PDGGH LVH
*18/LQX[ SODWIRUPXQGD oDOPDNWDGU $OWHUQDWLI o|]POHU UHWLU LNHQ PPNQ ROGXNoD
ILUPDEDPV]YHDODQQGDNHQGLQLLVSDWODP\D]OPODUGDQID\GDODQOPD\DoDOOPWr.
*HoHUOLd|]PQ%XOXQPDV
- Performans Kriteri
-(ULLOHELOLUOLN.ULWHUi
- Fiyat ve Lisans Kriteri
- Kaynak Gereksinimi Kriteri
- Gvenilirlik Kriteri
- Dokmantasyon Kriteri
%|OP
WH EHOLUWLOHQ DOWHUQDWLIOHULQ EX NULWHUOHUH X\JXQOXX LQFHOHQGLLQGH DDGDNL
VRQXoLOHNDUODOPDNWDGU
- ASP + e-mail modl + ODBC + MySQL + IIS + MS Exchange Server : ODBC nedeni ile
SHUIRUPDQVWD |QHPOL ELU ND\S V|] NRQXVX YH ([FKDQJH VHUYHU \D]OP YH $63
QLQ
IL\DWSHUIRUPDQVWDGNELUHULJ|VWHUPHVL
- ASP + e-mail modl + ODBC + MSSQL + IIS + MS Exchange Server : ODBC nedeni ile
SHUIRUPDQVWD |QHPOL ELU ND\S YH ([FKDQJH VHUYHU \D]OP YH $63
QLQ IL\DWSHUIRUPDQVWD
oRN GN ELU HUL J|VWHUPHVL V|] NRQXVX 0664/
LQ EX WU ELU X\JXODPD LoLQ JHUHLQGHQ
ID]ODE\NROPDVYHOLVDQVFUHWLQLQ\NVHNROPDV
- ASP + e-mail modl + ODBC + Access + PWS + MS Exchange Server : ODBC ve Access'
LQSHUIRUPDQVWDoRNGNELUHULoL]PHVL
- PHP + MySQL + Apache for Windows + MS Exchange Server : Apache for Windows' un
JYHQLOPH]ELUVLVWHPROXXYH([FKDQJH6HUYHU
Q\NVHNIL\DW
- PHP + MSSQL + Apache for Windows + MS Exchange Server : Apache for Windows' un
JYHQLOPH]ELUVLVWHPROXXYH([FKDQJH6HUYHU
Q\NVHNIL\DW
-3+32UDFOH$SDFKHIRU:LQGRZV06([FKDQJH6HUYHU2UDFOH
QJHUHLQGHQE\N
ROXX YH 2UDFOH ([FKDQJH
LQ oRN \NVHN IL\DW $SDFKH IRU :LQGRZV
XQ JYHQLOLU
ROPD\
- PHP + ODBC + Access + Apache for Windows + MS Exchange Server : ODBC ve Access'
LQ SHUIRUPDQVWD oRN GN ELU HUL oL]PHVL $\UFD $SDFKH IRU :LQGRZV
XQ JYHQLOLU
ROPD\
- PHP0\64/$SDFKH4SRSSHU6HQGPDLO0DOL\HWLQLQVIUROPDVYHLQDQOPD]ELU
SHUIRUPDQVYHJYHQLOLUOLNHULVLoL]PHVL
- 3+3 2UDFOH $SDFKH 4SRSSHU 6HQGPDLO 2UDFOH JHUHLQGHQ E\N YH SDKDO ELU
sistem ama en iyi performans.
*HUHNOL<D]OPYH'RQDQPQ7HGDULN(GLOPHVL
$OWHUQDWLI o|]POHU DUDVQGD VRQ VHoLP |]HOOLNOH PDOL\HWL GN YH ND\QDN JHUHNVLQLPL D]
VLVWHPOHUGHQ \DSOG LoLQ JHUHNOL \D]OPQ YH GRQDQPQ WHGDULN HGLOPHVL VRUXQ WHNLO
HWPHPLWLU <D]OPQ KHSVL FUHWVL] \D]OP ROGXX LoLQ LOJLOL VLWHOHUGHQ LQGLULOPL YH
GRQDQP LVH VDDW ,QWHUQHW H EDO ELU 3HQWLXP ,,, VXQXFX \HWHUOL J|UOPWU 7HVW
VXQXFXQX 2QDU ,QWHUQHW YH 1HWZRUN +L]PHWOHUL /WG WL DQGD ROXS \D]OPQ oDOU ELU
NRS\DVQDKWWSZHEPDLORQDUFRPWUDGUHVLQGHQHULLOHELOLU
6HoLP \DSODQ \D]OPODU *3/ OLVDQV LOH GDWODQ \D]OPODU LoHULVLQGH HQ JHOLPL
GRNPDQWDV\RQD VDKLS \D]OPODUGU %|OPGHVLVWHPLQROXPDVDDPDVQGDID\GDODQODQ
DokmanWDV\RQKDNNQGDD\UQWOELOJLPHYFXWWXU
*HUoHNOHWLULOHELOLUOLNdDOPDODU
<DSODQdDOPDQQ\DSVJHUHLoRNVD\GDND\QDNNRGXDoNYHFUHWVL]NLPL]DPDQFUHWOL
\D]OPODU LOH XUDOPWU .RGODQPD\D EDODQPDGDQ |QFH EX NRQX ile ok uzun bir
DUDWUPD JHOLWLUPH \DSOPDV VRQXFXQGD KHUKDQJL ELU \D]OP X\XPVX]OXX RUWD\D
oNPDPWU%XQHGHQOHNRGXQ\D]OPDVKDIWDJLELNVDELUVUHDOPWU
$DGDNLWDEORSURMHGHNXOODQODQ\D]OPODUKDNNQGDELOJLYHUPHNWHGLU
KullaQODQ<D]OP 7DQP
Red Hat Linux 6.2 OHWLP6LVWHPL
Apache 1.3.12 Web Sunucu
Sendmail 8.9.3 07$<D]OP
Qpopper 7.64 POP3 sunucu
MySQL 3.22.27 9HULWDEDQ6XQXFX
C-client 4.7 &NWSKDQHGRV\DODU
PHP4 (Zend) 6XQXFXWDUDIOEHWLPOHPHGLOL
Netscape 4.72 :HE7DUD\F
Bind 8.2.1-7 DNS Sunucu
ipchains 1.3.9-5 Firewall Sunucu
$DGDSURMH\DSVLOHLOJLOLDUDWUPDODUYHNDUODODQVRUXQODUDo|]POHU\HUDOPDNWDGU
<D]OPQJHOLWLULOPHVLVUDVQGDKHP3+3KHPGH3+3
Q323VXQXFXGDn e-mail alma
LOHPOHULQL\HULQHJHWLUHPHGLLJ|UOG3+3$SDFKHGHUOHPHVLVUDVQGDPDNLQH\H&-client
NWSKDQH GRV\DODU \NOHQHUHN YH 3+3
\L --with-imap parametresi ile derleyerek sorun
zld.
C-FOLHQW
WD NDUODODQ VRUXQD EHQ]HU ELU HNLOGH 3HP + Apache ikilisinin MySQL
YHULWDEDQQD HULHELOPHVL LoLQ 0\64/ NWSKDQH GRV\DODU LOH ELUOLNWH GHUOHQPHVL JHUHNOLOLL
JQGHPHJHOPLWLU
<D]OPQ PDQWQGD VLVWHPGH WXWXODQ H-SRVWDODUQ E\N ELU NVP YHULWDEDQQGD WXWXOGXX
LoLQ YHULWDEDQQQ E\N GHQLOHELOHFHN HNOHQWLOHUL LoLQH DODELOHFHN HNLOGH GHLWLULOPHVL
JHUHNOL\GL %X QHGHQOH P\VTOG SURJUDPQ oDOWUDQ NRG 0% OLPLWL LOH \HQLGHQ
SURJUDPODQG
6LVWHP ]HULQGH $SDFKH +773 6XQXFX 1&6$ +WWSG VWDQGDUG LOH WDP X\XPOX
ROPDVQGDQ GROD\ WHUFLK HGLOGL :HE VXQXFX SURMH PDNLQHVL ]HULQH NXUXOGX YH \LQH D\Q
PDNLQH ]HULQH NXUXODQ '16 VXQXFX LOH VDQDO ELU PLQL ,QWHUQHW \DUDWOG <LQH EDND ELU
PDNLQH]HULQGHNLZHEWDUD\FVLOH\D]OPWHVWHGLOGL
<D]OPGD\DNODNNDGDU-DYDVFULSWNXOODQOPDVJHUHNOLJ|UOG%XEHWLPOHUNRGODQUNHQ
EWQZHEWDUD\FODULOHX\XPOXROPDVQDoDOOG
Kimi e-SRVWD LVWHPFL \D]OPODUQ +70/ IRUPDWQGD H-posta gndermesi sonucunda gelen
PHVDM+70/RODUDNoNWJ|VWHULOPHVLYHEX+70/NRGXQVD\IDQQNHQGLNRGXLOHNDUPDV
SUREOHPLQHNDU+70/
H|]JNRPXWODUELUILOWUHGHQJHoLULOHUHNHNUDQGDJ|VWHULOGL.
$DGDNL HNLOGH DOWHUQDWLI o|]POHU DUDVQGDQ VHoLOHQ VLVWHPLQ LoHUGLL HOHPDQODU LOH JHQHO
ELUJ|UQPYHULOPLWLU
POP3
Sunucu
Internet Apache
.XOODQF Sunucu
PHP Dili Sendmail
Sunucu
MySQL
Sunucu
Disk
/LQX[OHWLP6LVWemi
7DVDUP
0LPDUL7DVDUP
/(70$,
Web Sunucu
3RVWDF VRQ JQOHULQ SRSOHU VXQXFX WDUDIO EHWLPOHPH GLOL RODQ 3+3 LOH WDVDUODQPWU
6XQXFX PDNLQH ]HULQGHQ HOHNWURQLN SRVWDODU RNX\DELOPHN LoLQGH oRN SRSOHU ,03 7ZLJ
Maildog, SquiUUHO0DLO JLEL ,0$3 SURWRNROQ NXOODQDQ SURJUDPODUQ DNVLQH 323
SURWRNROQNXOODQPDNWDGU323SURWRNROQQ,0$3
DJ|UHoRNGDKD\D\JQNXOODQOPDV
EX VHoLPGH |QHPOL ELU URO R\QDPWU ,0$3 SURWRNROQGHNL JLEL GLVN ]HULQGH GL]LQOHU
ROXWXUPD VHUYLVLQLQ LPSOHPHQWDV\RQX LoLQ VDQDO YHULWDEDQ GL]LQOHUL NXOODQOP ROXS
YHULWDEDQ VXQXFX \D]OP RODUDN GD SHUIRUPDQV YH EDVLWOLL LOH VRQ JQOHULQ SRSOHU 64/
YHULWDEDQVXQXFX\D]OPRODQ0\64/VHoLOPLWLU6LVWHPGHNLNXOODQFODUJHOHQPHVDMODUQ
tamDPHQ WUDQVSDUDQ ELU \DS LoHULVLQGH 323 VXQXFXGDQ oHNHELOLU YH JHUoHN GL]LQ ROGXXQX
GQG YHULWDEDQ WDEORODUQD NRS\DOD\DELOLU 3RVWDF KHPHQ KHPHQ EWQ H-mail sunucu
YH LVWHPFL \D]OPODU LOH X\XPOX ROXS VRUXQVX] GHQLOHELOHFHN ELU 0,0( GHVWHL PHYcuttur.
$\UFDSURJUDPLoHULVLQGHSHNoRNJHOLPLZHEPDLO\D]OPQGDQEHNOHQHQDGUHVGHIWHULQRW
GHIWHUL ERRNPDUN \|QHWLFLVL JLEL PRGOOHU GH EXOXQPDNWDGU 3URJUDPQ HQ |QHPOL
|]HOOLNOHULQGHQ ELU WDQHVL GH D\Q PDNLQH ]HULQGH ELUGHQ ID]OD DODQ DG EXOXQGXUXOGXX
GXUXPODUGD NXOODQFODUQ IDUNO DODQ DGODU LOH H-SRVWD J|QGHULS DODELOPHVLQL VDOD\DQ VDQDO
web bulundurma (virtual hosting) desteklemesidir.
3RVWDF
\D\HQLELUDODQDGYHNXOODQFHNOHPHN
3RVWDF [\ KDOLKD]UGD oDOPDNWD RODQ ELU H-SRVWD VXQXFXGDNL NXOODQFODUD ZHEPDLO
KL]PHWLYHUPHNLoLQWDVDUODQPWU+RWPDLO0DLO([FLWHJLELFUHWVL]ZHEPDLOYHUHQVLWHOHUGH
ROGXXJLELRQOLQHRODUDNVXQXFXPDNLQHGHNXOODQFKHVDEDoPDNJLELELU|]HOOLL\RNWXU%X
zellik JHUHNOL JYHQOLN |QOHPOHULQLQ DOQGQD HPLQ ROXQDQD NDGDU GD SURJUDPD
eklenmeyecektir.
# mysql postaci
mysql > select max(domain_id) from tblDomains;
max(domain_id)
1
1 row in set (0.00 sec)
<XNDUGDNL P\VTO VRUJXVX LOH HQ E\N GRPDLQBLG VRQXo RODUDN G|QHU YH EXQGDQ ELU ID]OD
GHHUL\HQLDODQDGQD,'RODUDNYHULOHELOLU
OHULGH EX DODQ DGQD ELU NXOODQF HNOHQPHVL JHUHNOL ROGXXQGD \DSOPDV JHUHNHQ
WEO8VHU'RPDLQV DGO WDEORGD EX NXOODQF DGQQ KDQJL GRPDLQBLG \H DLW ROGXXQX
belirtmektir.
# mysql postaci
mysql > insert into tblUserDomains values ("umutgokbayrak",2);
%XUDGDNL VD\V D] |QFH HNOHQPL RODQ \HQLGRPDLQFRPWU DGO GRPDLQ LQ ,' VD\V
ROPDNWDGU
.XUXOXPGDQVRQUDNLZDUQLQJPHVDMODU
%X PHVDMODU DGQGDQ GD EHOOL RODFD JLEL ELU KDWD GHLOGLU 6DGHFH X\DU PHVDMODUGU
3URJUDPQ NRGX YH LOH\LL LOH LOJLOL KHUKDQJL ELUVRrun yoktur. Bir nceki blmde kurulum
VRQ DDPDVQGD EHOLUWLOHQ XVUORFDOOLESKSLQL GRV\DVQQ LoHULVLQGHNL GLVSOD\BHUURUV 2Q
\D]DQ\HUL2II\DSPDPDNWDQND\QDNODQPDNWDGU%XGHLLNOLL\DSWNWDQVRQUDNLOODOO-HUP
httpd komutu ile Apache yeniden baODWOULVHKHUKDQJLELUVRUXQNDOPD\DFDNWU
$QD VD\IDGDQ VRQUD \DQO NXOODQF DG YH LIUH JLULOGLLQGH RUWD\D oNDQ
8QDEOHWRRSHQ3RSVWUHDPPHVDM
6RUXQXQ QHGHQL QXPDUDO EDONWD EHOLUWLOHQ QHGHQGLU OJLOL PDGGHGHNL GHLLklikler
\DSOGQGDVRUXQJLGHULOHFHNWLU
$UD\]7DQPODU
$DGD J|UQHQ HNLO NXOODQFQQ LON RODUDN NDUODDFD HNLOGLU %X HNUDQGD NXOODQF
NXOODQF LVPL YH LIUHVLQL NXOODQDUDN NHQGL SRVWD NXWXVXQD XODDELOLU $\UFD GLO VHoLPOHUL
\DSDUDNHNUDQQLVWHGLLGLOGHJ|UQPHVLQLVDOD\DELOLU
3.2.2.2 Gelen Kutusu
.XOODQFDQDVD\IDGDQNXOODQFLVPLYHLIUHVLQLJLUGLNWHQVRQUDDDGDNLJLELELUHNUDQLOH
NDUODU %X HNUDQGD NXOODQF PHVDMODUQ RNX\DELOLU \HQL PHVDM J|QGHUHELOLU LVWHGLL ELU
PHVDMVLOHELOLUYH\DEXPHVDMGLOHGLLELUGL]LQHWD\DELOLU
3.2.2.3 Mesaj Okuma
.XOODQFELU|QFHNLHNUDQGDQELUPHVDMVHoHUVHNDUODDFDHNUDQDDGDNLQLQEHQzeri bir
HNUDQRODFDNWU
3.2.2.4 Yeni Mesaj
.XOODQF<HQL0HVDMOLQNLQLVHoWLLQGHNDUVQDDDGDNLJLELELUHNUDQoNDU.XOODQFEX
ekrandan yeni bir mesaj gnderebilir.
3.2.2.5 Dizinler
.XOODQF'L]LQOHUOLQNLQLVHoWLLQGHNDUVQDJHOHFHNHNUDQDDGDNLQHEHQ]HURODFDNWU%X
HNUDQGDQ NLL\H DLW WP GL]LQOHU J|UQPHNWHGLU .XOODQF NHQGL \DUDWW GL]LQOHU ]HULQGH
VLOPHYHLVPLQLGHLWLUPHLOHPOHULQL\DSDELOLU
3.2.2.6 Giden Kutusu
.XOODQF *LGHQ .XWXVXQX VHoWLLQGH NDUVQD JHOHFHN RODQ DDGDNLQLQ EHQ]HUL ELU HNUDQ
JHOLUYHEXHNUDQGDNXOODQFQQJ|QGHUPLROGXXWPPHVDMODUOLVWHOHQLU
3.2.2.7 Adres Defteri
.XOODQFVLVWHPHJLUGLNWHQVRQUDKHUHNUDQGDNDUODDELOHFHLELUOLQNRODQ$GUHV'HIWHULQL
VHoWLLQGHDDGDNLJLELELUHNUDQODNDUODU.XOODQFEXHNUDQGDDGUHVGHIWHULQH\HQLELU
NLL HNOH\HELOLU LVWHGLL ELU NLL\L VLOHELOLU YH\D R DQD NDGDU HNOHGLL NLLOHULQ D\UQWO
ELOJLOHULQHXODDELOLU
3.2.2.8 Adres Defterinde Gncelleme
$GUHV'HIWHULQGHQELUNLLVHoLOGLLQGHNDUODODFDNHNUDQDDGDNLQHEHQ]HURODFDNWU%X
HNUDQVD\HVLQGHVHoLOPLRODQNLL\HDLWWPELOJLOHUJQFHOOHQHELOLU
3.2.2.9 Bookmark
%RRNPDUNOLQNLVHoLOGLLQGHJHOHFHNRODQDDGDNLQLQEHQ]HULHNUDQGDNXOODQFRDQDNDGDU
HNOHPL ROGXX VLWHOHUL J|UHELOLU LVWHGLL ELU ERRNPDUN VLOHELOLU YH\D \HQL ELU VLWH
ekleyebilir.
3.2.2.10 Bookmark Gncelleme
%RRNPDUN HNUDQQGDQ KHUKDQJL ELU OLQN VHoLOGLLQGH JHOHFHN RODQ HNUDQ DDGDNLQLQ ELU
EHQ]HULRODFDNWU%XHNUDQGDLOJLOLOLQNKDNNQGDJQFHOOHPHOHU\DSODELOLU
3.2.2.11 Not Defteri
Not DHIWHULQGHQ 1RW (NOH OLQNL YH\D KHUKDQJL ELU QRW VHoLOGLLQGH DDGDNL JLEL ELU HNUDQ
J|UQHFHNWLU 1RW (NOH OLQNL VHoLOGL\VH NXOODQF EX HNUDQGD \HQL ELU QRW ROXWXUDELOLU (HU
GDKD |QFHGHQ \D]OP IDNDW JQFHOOHQPHN LVWHQHQ ELU QRW VHoLOGL\VH EX HNUDnda o nota ait
ELOJLOHUJ|UQHFHNWLUYHNXOODQFEXHNUDQGDQJQFHOOHPHVLQL\DSDELOHFHNWLU
*LUGLdNW7DVDUP
adresdefteri.php
Girdiler dNWODU
ID .XOODQFQQDGUHVGHIWHULND\WODU
lang
attachments.php
Girdiler dNWODU
ID Eklenti silindi
Lang Eklenti eklendi
Cc
Bcc
Subject
Attached
Msgbody
contact_detay.php
Girdiler dNWODU
ID Txtadsoyad
Lang Txtemail
Auth_user Txtnotes
Item_id Txttelefon
contact_ekle.php
Girdiler dNWODU
ID .D\WHNOHQGL
Lang Buna izniniz yok
contact_sil.php
Girdiler dNWODU
ID .D\WHNOHQGL
Lang Buna izniniz yok
Item_id
contact_update.php
Girdiler dNWODU
ID .D\WHNOHQGL
Lang Buna izniniz yok
Item_id
copbosalt.php
Girdiler dNWODU
ID p kutusu ERDOWOG
Lang buna izniniz yok
Mbox_id
dizin_degistir.php
Girdiler dNWODU
ID PHVDMWDQG
Lang buna izniniz yok
mesajlar[ ]
Mbox_id
db
dizinler.php
Girdiler dNWODU
ID .XOODQF\DDLWGL]LQOHU
Lang
dizin_rename.php
Girdiler dNWODU
ID Eski isim
Lang Buna yetkiniz yok
Mbox_id
dizin_sil.php
Girdiler dNWODU
ID 'L]LQVLOLQPLWLU
Lang Buna yetkiniz yok
Mbox_id
dizin_yarat.php
Girdiler dNWODU
ID GL]LQ\DUDWOG
Lang
Txtyenidizin
dosyaindir.php
Girdiler dNWODU
ID Veri
Lang Dosyatipi
Gercekisim Buna izniniz yok
Dosyatipi
Mbox
Message_id
Part
Attach_id
User_id
eklentisil.php
Girdiler dNWODU
ID GRV\DVLOLQPLWLU
Lang
Dosyaadi
favorite_detay.php
Girdiler dNWODU
ID Txturl
Lang Txttitle
auth_user txtnotes
favorite_id
favorite_ekle.php
Girdiler dNWODU
ID IDYRULWHHNOHQPLWLU
Lang buna yetkiniz yok
Txttitle
txturl
favorites.php
Girdiler dNWODU
ID NXOODQFQQERRNPDUNOLVWHVL
Lang
favorite_sil.php
Girdiler dNWODU
ID IDYRULWHVLOLQPLWLU
Lang buna yetkiniz yok
Favorite_id
favorite_update.php
Girdiler dNWODU
ID IDYRULWHJQFHOOHQPLWLU
Lang buna yetkiniz yok
Favorite_id
mailbox.php
Girdiler dNWODU
ID Mesajno
Lang Htmlform
Db Htmlsubject
Giris
mesajgonder.php
Girdiler dNWODU
ID e-mail gnderiliyor.
Lang buna yetkiniz yok
To
Cc
Bcc
Subject
OLNLVHO9HULWDEDQ7DVDUP
6LVWHP0\64/YHULWDEDQ]HULQGHEXOXQPDNWDGU<DUDWWP]3RVWDFLDGOELUYHULWDEDQ
LoLQGHDDGDNLWDEORODUEXOXQPDNWDGU
Tablolar
tblAdressbook
tblAttachments
tblDomains
tblDuyurular
tblFavorites
tblLanguages
tblLoggedUsers
tblMailBoxes
tblMessages
tblNotebook
tblText
tblUsers
tblUserDomains
$DGD ROXWXUXOPX RODQ EX WDEORODU DoNODQPWU %X WDEORODU JHOLWLULOPH\H DoN ROXS
\DSODUGHLWLULOPHGHQNXOODQOPDOGU
1. tblAdressbook
$DGDNL WDEOR NXOODQFODUQ DGUHV GHIWHUL ELOJLOHULQL VDNODPDV LoLQ WDVDUODQPWU %X
WDEORQXQ VDKDODUQGDQ LON VDKD RODQ LWHPBLG RWRPDWLN DUWDQ ELU ELULQFLO DQDKWDUGU %X
DQDKWDUODWDEORGDNLKHUDGUHVXQLTXHELULG\HVDKLSROXU'LHUVDKDODULOJLOLNXOODQFQQLG
VLNXOODQFQQDGUHVGHIWHULQH\D]PROGXXNLLQLQDGYHVR\DGH-PDLODGUHVLHNDoNlama
YHWHOHIRQQXPDUDVELOJLOHULQLLoHUPHNWHGLU
2. tblAttachments
6DQDODODQDGVXQXPXLoLQNXOODQOU
4. tblDuyurular
Ana sayfD\DJHOHQNXOODQFODUDJHOHQPHVDMODULoHULU
5. tblFavorites
.XOODQFODUQERRNPDUNOLVWHOHULQLWXWDU
6. tblLanguages
6LVWHPGHWDQPORODQGLOVHoHQHNOHULQLEXOXQGXUXU
/RJODUQWXWXOGXXWDEORGXU6LVWHPHEDODQDQKHUNXOODQFLoLQELUVDWUHNOHQLU
8. tblMailBoxes
.XOODQFODUQ VDQDO SRVWD NXWXODUQ EHOLUOHU 0ER[BWLS VDKDV SRVWD NXWXVXQXQ o|S NXWXVX
JLGHQ NXWXVX \D GD NXOODQF WDUDIQGDQ \DUDWOP ELU SRVWD NXWXVX ROGXXQX D\UW HWPHGH
NXOODQOPWU
9. tblMessages
6DQDOSRVWDNXWXODUQDND\GHGLOPLPHVDMODUEXOXQGXUXU
.XOODQFODUQQRWGHIWHULND\WODUQWXWDU
11. tblText
12. tblUsers
.XOODQFKDNNQGDD\UQWOELOJLWXWDU
.XOODQFODUELUVDQDODGLOHLOLNLOHQGLUPHNLoLQNXOODQOU
3RVWDF VD\IDODUGD J|VWHULOHQ EWQ \D]ODU ELU YHULWDEDQQGD WXWPDNWDGU %XQXQ WHPHO
DPDFoRNOXGLOGHVWHLQLPPNQROGXNoDJHOLWLULOHELOLUNOPDNYHGRV\DLOHPOHULQGHGRV\D
ama ve kapama sresinGH JHoHQ ]DPDQ YH ND\QDN ND\EQ PLQLPXPD LQGLUPHNWLU TXHULHV
GL]LQL LoHULVLQGH EXOXQDQ GLO GRV\DODUQ |UQHN DODUDN VUDV ER]XOPDPDN DUW LOH oHYULOHQ
KHUKDQJLELUGLOGHSRVWDFLoDODELOPHNWHGLU
3URJUDP oRNOX GRPDLQ DODQ DG GHVWHL LoHUPHNWHGLU $ODQ DGODU \LQH YHULWDEDQQGD
WXWXOPDNWD YH KHU NXOODQF EX DODQ DGODUQGDQ ELULVL LOH LOLNLOHQGLULOPHOLGLU QXPDUDO
GRPDLQGHIDXOWGRPDLQRODUDNYDUVD\OUYHDODQDGEHOLUWLOPHPLELUNXOODQFEXDODQDGQ
NXOODQU
3URJUDPGDNL YHULWDEDQ NXOODQFV YHULWDEDQ DG JLEL D\DUODU LQFOXGHV GL]LQL LoHULVLQGH \HU
alan global.inc dizini ierisinden ayarlanabilir.
$DGD|UQHNRODUDNJHOHQJOREDOLQFGRV\DV\HUDOPDNWDGU
<?
$default_lang=1;
$dbuser = "dbuser";
$dbuser_pass = "";
$dbname = "postaci";
$servername = "localhost";
$title = "Postaci Webmail 1.0";
$admin = "umut@onar.com.tr";
$ayirac = 15;
$attach_dizini = "/tmp/postaci/";
?>
3URJUDPQND\QDNNRGXQXQWDPDP(.$GDEXOXQDELOLU
4. Kaynaklar
#
# Based upon the NCSA server configuration files originally by Rob McCool.
#
# This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://www.apache.org/docs/> for detailed information about
# the directives.
#
# Do NOT simply read the instructions in here without understanding
# what they do. They're here only as hints or reminders. If you are
unsure
# consult the online docs. You have been warned.
#
# After this file is processed, the server will look for and process
# /home/httpd/conf/srm.conf and then /home/httpd/conf/access.conf
# unless you have overridden these with ResourceConfig and/or
# AccessConfig directives here.
#
# The configuration directives are grouped into three basic sections:
# 1. Directives that control the operation of the Apache server process as
a
# whole (the 'global environment').
# 2. Directives that define the parameters of the 'main' or 'default'
server,
# which responds to requests that aren't handled by a virtual host.
# These directives also provide default values for the settings
# of all virtual hosts.
# 3. Settings for virtual hosts, which allow Web requests to be sent to
# different IP addresses or hostnames and have them handled by the
# same Apache server process.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with "/" (or "drive:/" for Win32),
the
# server will use that explicit path. If the filenames do *not* begin
# with "/", the value of ServerRoot is prepended -- so "logs/foo.log"
# with ServerRoot set to "/usr/local/apache" will be interpreted by the
# server as "/usr/local/apache/logs/foo.log".
#
#
# ServerType is either inetd, or standalone. Inetd mode is only supported
on
# Unix platforms.
#
ServerType standalone
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE! If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation
# (available at <URL:http://www.apache.org/docs/mod/core.html#lockfile>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
ServerRoot "/home/httpd"
#
# The LockFile directive sets the path to the lockfile used when Apache
# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or
# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at
# its default value. The main reason for changing it is if the logs
# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL
# DISK. The PID of the main server process is automatically appended to
# the filename.
#
#LockFile /home/httpd/logs/httpd.lock
#
# PidFile: The file in which the server should record its process
# identification number when it starts.
#
PidFile /home/httpd/logs/httpd.pid
#
# ScoreBoardFile: File used to store internal server process information.
# Not all architectures require this. But if yours does (you'll know
because
# this file will be created when you run Apache) then you *must* ensure
that
# no two invocations of Apache share the same scoreboard file.
#
ScoreBoardFile /home/httpd/logs/httpd.scoreboard
#
# In the standard configuration, the server will process this file,
# srm.conf, and access.conf in that order. The latter two files are
# now distributed empty, as it is recommended that all directives
# be kept in a single file for simplicity. The commented-out values
# below are the built-in defaults. You can have the server ignore
# these files altogether by using "/dev/null" (for Unix) or
# "nul" (for Win32) for the arguments to the directives.
#
#ResourceConfig conf/srm.conf
#AccessConfig conf/access.conf
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 15
#
# Server-pool size regulation. Rather than making you guess how many
# server processes you need, Apache dynamically adapts to the load it
# sees --- that is, it tries to maintain enough server processes to
# handle the current load, plus a few spare servers to handle transient
# load spikes (e.g., multiple simultaneous requests from a single
# Netscape browser).
#
# It does this by periodically checking how many servers are waiting
# for a request. If there are fewer than MinSpareServers, it creates
# a new spare. If there are more than MaxSpareServers, some of the
# spares die off. The default values are probably OK for most sites.
#
MinSpareServers 5
MaxSpareServers 10
#
# Number of servers to start initially --- should be a reasonable ballpark
# figure.
#
StartServers 5
#
# Limit on total number of servers running, i.e., limit on the number
# of clients who can simultaneously connect --- if this limit is ever
# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW.
# It is intended mainly as a brake to keep a runaway server from taking
# the system with it as it spirals down...
#
MaxClients 150
#
# MaxRequestsPerChild: the number of requests each child process is
# allowed to process before the child dies. The child will exit so
# as to avoid problems after prolonged use when Apache (and maybe the
# libraries it uses) leak memory or other resources. On most systems, this
# isn't really needed, but a few (such as Solaris) do have notable leaks
# in the libraries. For these platforms, set to something like 10000
# or so; a setting of 0 means unlimited.
#
# NOTE: This value does not include keepalive requests after the initial
# request per connection. For example, if a child process handles
# an initial request and 10 subsequent "keptalive" requests, it
# would only count as 1 request towards this limit.
#
MaxRequestsPerChild 0
#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default. See also the <VirtualHost>
# directive.
#
#Listen 3000
#Listen 12.34.56.78:80
#
# BindAddress: You can support virtual hosts with this option. This
directive
# is used to tell the server which IP address to listen to. It can either
# contain "*", an IP address, or a fully qualified Internet domain name.
# See also the <VirtualHost> and Listen directives.
#
#BindAddress *
#
# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO
you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Please read the file README.DSO in the Apache 1.3 distribution for more
# details about the DSO mechanism and run `httpd -l' for the list of
already
# built-in (statically linked and thus always available) modules in your
httpd
# binary.
#
# Note: The order is which modules are loaded is important. Don't change
# the order below without expert advice.
#
# Example:
# LoadModule foo_module libexec/mod_foo.so
#
# ExtendedStatus controls whether Apache will generate "full" status
# information (ExtendedStatus On) or just basic information (ExtendedStatus
# Off) when the "server-status" handler is called. The default is Off.
#
#ExtendedStatus On
#
# If your ServerType directive (set earlier in the 'Global Environment'
# section) is set to "inetd", the next few directives don't have any
# effect since their settings are defined by the inetd configuration.
# Skip ahead to the ServerAdmin directive.
#
#
# Port: The port to which the standalone server listens. For
# ports < 1023, you will need httpd to be run as root initially.
#
Port 80
##
## SSL Support
##
## When we also provide SSL we have to listen to the
## standard HTTP port (see above) and to the HTTPS port
##
<IfDefine SSL>
Listen 80
Listen 443
</IfDefine>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# . On SCO (ODT 3) use "User nouser" and "Group nogroup".
# . On HPUX you may not be able to use shared memory as nobody, and the
# suggested workaround is to create a user www and use that user.
# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET)
# when the value of (unsigned)Group is above 60000;
# don't use Group nobody on these systems!
#
User nobody
Group nobody
#
# ServerAdmin: Your address, where problems with the server should be
# e-mailed. This address appears on some server-generated pages, such
# as error documents.
#
ServerAdmin root@pluto.onar.com.tr
#
# ServerName allows you to set a host name which is sent back to clients
for
# your server if it's different than the one the program would get (i.e.,
use
# "www" instead of the host's real name).
#
# Note: You cannot just invent host names and hope they work. The name you
# define here must be a valid DNS name for your host. If you don't
understand
# this, ask your network administrator.
# If your host doesn't have a registered DNS name, enter its IP address
here.
# You will have to access it by its address (e.g., http://123.45.67.89/)
# anyway, and this will make redirections work in a sensible way.
#
#ServerName pluto.onar.com.tr
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/home/httpd/htdocs"
#
# Each directory to which Apache has access, can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
#
# First, we configure the "default" to be a very restrictive set of
# permissions.
#
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#
# Note that from this point forward you must specifically allow
# particular features to be enabled - so if something's not working as
# you might expect, make sure that you have specifically enabled it
# below.
#
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/home/httpd/htdocs">
#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
Options Indexes FollowSymLinks MultiViews
#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride None
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
#
# UserDir: The name of the directory which is appended onto a user's home
# directory if a ~user request is received.
#
<IfModule mod_userdir.c>
UserDir public_html
</IfModule>
#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
#<Directory /home/*/public_html>
# AllowOverride FileInfo AuthConfig Limit
# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
# <Limit GET POST OPTIONS PROPFIND>
# Order allow,deny
# Allow from all
# </Limit>
# <LimitExcept GET POST OPTIONS PROPFIND>
# Order deny,allow
# Deny from all
# </LimitExcept>
#</Directory>
#
# DirectoryIndex: Name of the file or files to use as a pre-written HTML
# directory index. Separate multiple entries with spaces.
#
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
#
# AccessFileName: The name of the file to look for in each directory
# for access control information.
#
AccessFileName .htaccess
#
# The following lines prevent .htaccess files from being viewed by
# Web clients. Since .htaccess files often contain authorization
# information, access is disallowed for security reasons. Comment
# these lines out if you want Web visitors to see the contents of
# .htaccess files. If you change the AccessFileName directive above,
# be sure to make the corresponding changes here.
#
# Also, folks tend to use names such as .htpasswd for password
# files, so this will protect those as well.
#
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
#
# CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" with
each
# document that was negotiated on the basis of content. This asks proxy
# servers not to cache the document. Uncommenting the following line
disables
# this behavior, and proxies will be allowed to cache the documents.
#
#CacheNegotiatedDocs
#
# UseCanonicalName: (new for 1.3) With this setting turned on, whenever
# Apache needs to construct a self-referencing URL (a URL that refers back
# to the server the response is coming from) it will use ServerName and
# Port to form a "canonical" name. With this setting off, Apache will
# use the hostname:port that the client supplied, when possible. This
# also affects SERVER_NAME and SERVER_PORT in CGI scripts.
#
UseCanonicalName On
#
# TypesConfig describes where the mime.types file (or equivalent) is
# to be found.
#
<IfModule mod_mime.c>
TypesConfig /home/httpd/conf/mime.types
</IfModule>
#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value. If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
DefaultType text/plain
#
# The mod_mime_magic module allows the server to use various hints from the
# contents of the file itself to determine its type. The MIMEMagicFile
# directive tells the module where the hint definitions are located.
# mod_mime_magic is not part of the default server (you have to add
# it yourself with a LoadModule [see the DSO paragraph in the 'Global
# Environment' section], or recompile the server and include mod_mime_magic
# as part of the configuration), so it's enclosed in an <IfModule>
container.
# This means that the MIMEMagicFile directive will only be processed if the
# module is part of the server.
#
<IfModule mod_mime_magic.c>
MIMEMagicFile /home/httpd/conf/magic
</IfModule>
#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off
#
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog /home/httpd/logs/error_log
#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn
#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
#
# The location and format of the access logfile (Common Logfile Format).
# If you do not define any access logfiles within a <VirtualHost>
# container, they will be logged here. Contrariwise, if you *do*
# define per-<VirtualHost> access logfiles, transactions will be
# logged therein and *not* in this file.
#
CustomLog /home/httpd/logs/access_log common
#
# If you would like to have agent and referer logfiles, uncomment the
# following directives.
#
#CustomLog /home/httpd/logs/referer_log referer
#CustomLog /home/httpd/logs/agent_log agent
#
# If you prefer a single logfile with access, agent, and referer
information
# (Combined Logfile Format) you can use the following directive.
#
#CustomLog /home/httpd/logs/access_log combined
#
# Optionally add a line containing the server version and virtual host
# name to server-generated pages (error documents, FTP directory listings,
# mod_status and mod_info output etc., but not CGI generated documents).
# Set to "EMail" to also include a mailto: link to the ServerAdmin.
# Set to one of: On | Off | EMail
#
ServerSignature On
#
# Aliases: Add here as many aliases as you need (with no limit). The format
is
# Alias fakename realname
#
<IfModule mod_alias.c>
#
# Note that if you include a trailing / on fakename then the server
will
# require it to be present in the URL. So "/icons" isn't aliased in
this
# example, only "/icons/"..
#
Alias /icons/ "/home/httpd/icons/"
<Directory "/home/httpd/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#
# ScriptAlias: This controls which directories contain server scripts.
# ScriptAliases are essentially the same as Aliases, except that
# documents in the realname directory are treated as applications and
# run by the server when requested rather than as documents sent to the
client.
# The same rules about trailing "/" apply to ScriptAlias directives as
to
# Alias.
#
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/"
#
# "/home/httpd/cgi-bin" should be changed to whatever your
ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/home/httpd/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
</IfModule>
# End of aliases.
#
# Redirect allows you to tell clients about documents which used to exist
in
# your server's namespace, but do not anymore. This allows you to tell the
# clients where to look for the relocated document.
# Format: Redirect old-URI new-URL
#
#
# Directives controlling the display of server-generated directory
listings.
#
<IfModule mod_autoindex.c>
#
# FancyIndexing is whether you want fancy directory indexing or
standard
#
IndexOptions FancyIndexing
#
# AddIcon* directives tell the server which icon to show for different
# files or filename extensions. These are only displayed for
# FancyIndexed directories.
#
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^
#
# DefaultIcon is which icon to show for files which do not have an icon
# explicitly set.
#
DefaultIcon /icons/unknown.gif
#
# AddDescription allows you to place a short description after a file
in
# server-generated indexes. These are only displayed for FancyIndexed
# directories.
# Format: AddDescription "description" filename
#
#AddDescription "GZIP compressed document" .gz
#AddDescription "tar archive" .tar
#AddDescription "GZIP compressed tar archive" .tgz
#
# ReadmeName is the name of the README file the server will look for by
# default, and append to directory listings.
#
# HeaderName is the name of a file which should be prepended to
# directory indexes.
#
# If MultiViews are amongst the Options in effect, the server will
# first look for name.html and include it if found. If name.html
# doesn't exist, the server will then look for name.txt and include
# it as plaintext if found.
#
ReadmeName README
HeaderName HEADER
#
# IndexIgnore is a set of filenames which directory indexing should
ignore
# and not include in the listing. Shell-style wildcarding is
permitted.
#
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
</IfModule>
# End of indexing directives.
#
# Document types.
#
<IfModule mod_mime.c>
#
# AddEncoding allows you to have certain browsers (Mosaic/X 2.1+)
uncompress
# information on the fly. Note: Not all browsers support this.
# Despite the name similarity, the following Add* directives have
nothing
# to do with the FancyIndexing customization directives above.
#
AddEncoding x-compress Z
AddEncoding x-gzip gz tgz
#
# AddLanguage allows you to specify the language of a document. You can
# then use content negotiation to give a browser a file in a language
# it can understand.
#
# Note 1: The suffix does not have to be the same as the language
# keyword --- those with documents in Polish (whose net-standard
# language code is pl) may wish to use "AddLanguage pl .po" to
# avoid the ambiguity with the common suffix for perl scripts.
#
# Note 2: The example entries below illustrate that in quite
# some cases the two character 'Language' abbriviation is not
# identical to the two character 'Country' code for its country,
# E.g. 'Danmark/dk' versus 'Danish/da'.
#
# Note 3: In the case of 'ltz' we violate the RFC by using a three char
# specifier. But there is 'work in progress' to fix this and get
# the reference data for rfc1766 cleaned up.
#
# Danish (da) - Dutch (nl) - English (en) - Estonian (ee)
# French (fr) - German (de) - Greek-Modern (el)
# Italian (it) - Portugese (pt) - Luxembourgeois* (ltz)
# Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)
# Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
#
AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .ee
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage it .it
AddLanguage ja .ja
AddCharset ISO-2022-JP .jis
AddLanguage pl .po
AddCharset ISO-8859-2 .iso-pl
AddLanguage pt .pt
AddLanguage pt-br .pt-br
AddLanguage ltz .lu
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .se
AddLanguage cz .cz
#
# AddType allows you to tweak mime.types without actually editing it,
or to
# make certain files to be certain types.
#
# For example, the PHP 3.x module (not part of the Apache distribution
- see
# http://www.php.net) will typically use:
#
#AddType application/x-httpd-php3 .php3
#AddType application/x-httpd-php3-source .phps
#
# And for PHP 4.x, use:
#
#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps
#
# AddHandler allows you to map certain file extensions to "handlers",
# actions unrelated to filetype. These can be either built into the
server
# or added with the Action command (see below)
#
# If you want to use server side includes, or CGI outside
# ScriptAliased directories, uncomment the following lines.
#
# To use CGI scripts:
#
#AddHandler cgi-script .cgi
#
# To use server-parsed HTML files
#
#AddType text/html .shtml
#AddHandler server-parsed .shtml
#
# Uncomment the following line to enable Apache's send-asis HTTP file
# feature
#
#AddHandler send-as-is asis
#
# If you wish to use server-parsed imagemap files, use
#
#AddHandler imap-file map
#
# To enable type maps, you might want to use
#
#AddHandler type-map var
</IfModule>
# End of document types.
#
# Action lets you define media types that will execute a script whenever
# a matching file is called. This eliminates the need for repeated URL
# pathnames for oft-used CGI file processors.
# Format: Action media/type /cgi-script/location
# Format: Action handler-name /cgi-script/location
#
#
# MetaDir: specifies the name of the directory in which Apache can find
# meta information files. These files contain additional HTTP headers
# to include when sending the document
#
#MetaDir .web
#
# MetaSuffix: specifies the file name suffix for the file containing the
# meta information.
#
#MetaSuffix .meta
#
# Customizable error response (Apache style)
# these come in three flavors
#
# 1) plain text
#ErrorDocument 500 "The server made a boo boo.
# n.b. the (") marks it as text, it does not get output
#
# 2) local redirects
#ErrorDocument 404 /missing.html
# to redirect to local URL /missing.html
#ErrorDocument 404 /cgi-bin/missing_handler.pl
# N.B.: You can redirect to a script or a document using server-side-
includes.
#
# 3) external redirects
#ErrorDocument 402 http://some.other_server.com/subscription_info.html
# N.B.: Many of the environment variables associated with the original
# request will *not* be available to such a script.
#
# Customize behaviour based on the browser
#
<IfModule mod_setenvif.c>
#
# The following directives modify normal HTTP response behavior.
# The first directive disables keepalive for Netscape 2.x and browsers
that
# spoof it. There are known problems with these browser
implementations.
# The second directive is for Microsoft Internet Explorer 4.0b2
# which has a broken HTTP/1.1 implementation and does not properly
# support keepalive when it is used on 301 or 302 (redirect) responses.
#
BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-
1.0
#
# The following directive disables HTTP/1.1 responses to browsers which
# are in violation of the HTTP/1.0 spec by not being able to grok a
# basic 1.1 response.
#
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0
</IfModule>
#
# Allow server status reports, with the URL of http://servername/server-
status
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-status>
# SetHandler server-status
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#</Location>
#
# Allow remote server configuration reports, with the URL of
# http://servername/server-info (requires that mod_info.c be loaded).
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-info>
# SetHandler server-info
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#</Location>
#
# There have been reports of people trying to abuse an old bug from pre-1.1
# days. This bug involved a CGI script distributed as a part of Apache.
# By uncommenting these lines you can redirect these attacks to a logging
# script on phf.apache.org. Or, you can record them yourself, using the
script
# support/phf_abuse_log.cgi.
#
#<Location /cgi-bin/phf*>
# Deny from all
# ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi
#</Location>
#
# Proxy Server directives. Uncomment the following lines to
# enable the proxy server:
#
#<IfModule mod_proxy.c>
#ProxyRequests On
#
#<Directory proxy:*>
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#</Directory>
#
# Enable/disable the handling of HTTP/1.1 "Via:" headers.
# ("Full" adds the server version; "Block" removes all outgoing Via:
headers)
# Set to one of: Off | On | Full | Block
#
#ProxyVia On
#
# To enable the cache as well, edit and uncomment the following lines:
# (no cacheing without CacheRoot)
#
#CacheRoot "/home/httpd/proxy"
#CacheSize 5
#CacheGcInterval 4
#CacheMaxExpire 24
#CacheLastModifiedFactor 0.1
#CacheDefaultExpire 1
#NoCache a_domain.com another_domain.edu joes.garage_sale.com
#</IfModule>
# End of proxy directives.
#
# If you want to use name-based virtual hosts you need to define at
# least one IP address (and port number) for them.
#
#NameVirtualHost 12.34.56.78:80
#NameVirtualHost 12.34.56.78
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
#
#<VirtualHost ip.address.of.host.some_domain.com>
# ServerAdmin webmaster@host.some_domain.com
# DocumentRoot /www/docs/host.some_domain.com
# ServerName host.some_domain.com
# ErrorLog logs/host.some_domain.com-error_log
# CustomLog logs/host.some_domain.com-access_log common
#</VirtualHost>
#<VirtualHost _default_:*>
#</VirtualHost>
##
## SSL Global Context
##
## All SSL configuration in this context applies both to
## the main server and all SSL-enabled virtual hosts.
##
#
# Some MIME-types for downloading Certificates and CRLs
#
<IfDefine SSL>
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
</IfDefine>
<IfModule mod_ssl.c>
# Semaphore:
# Configure the path to the mutual explusion semaphore the
# SSL engine uses internally for inter-process synchronization.
SSLMutex file:/home/httpd/logs/ssl_mutex
# Logging:
# The home of the dedicated SSL protocol logfile. Errors are
# additionally duplicated in the general error log file. Put
# this somewhere where it cannot be used for symlink attacks on
# a real server (i.e. somewhere where only root can write).
# Log levels are (ascending order: higher ones include lower ones):
# none, error, warn, info, trace, debug.
SSLLog /home/httpd/logs/ssl_engine_log
SSLLogLevel info
</IfModule>
<IfDefine SSL>
##
## SSL Virtual Host Context
##
<VirtualHost _default_:443>
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A test
# certificate can be generated with `make certificate' under
# built time. Keep in mind that if you've both a RSA and a DSA
# certificate you can configure both in parallel (to also allow
# the use of DSA ciphers, etc.)
SSLCertificateFile /home/httpd/conf/ssl.crt/server.crt
#SSLCertificateFile /home/httpd/conf/ssl.crt/server-dsa.crt
# Access Control:
# With SSLRequire you can do per-directory access control based
# on arbitrary complex boolean expressions containing server
# variable checks and other lookup directives. The syntax is a
# mixture between C and Perl. See the mod_ssl documentation
# for more details.
#<Location />
#SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)-/ \
# and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \
# and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \
# and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \
# and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \
# or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/
#</Location>
# Per-Server Logging:
# The home of a custom SSL log file. Use this when you want a
# compact non-error SSL logfile on a virtual host basis.
CustomLog /home/httpd/logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
</IfDefine>
<VirtualHost 192.168.10.4>
ServerAdmin umut@onar.com.tr
DocumentRoot /home/httpd/htdocs/postaci
ServerName postaci.onar.com.tr
</VirtualHost>
Ek C - Sendmail.mcYH6HQGPDLOFIGRV\DV
6HQGPDLOPF'RV\DV
divert(-1)
dnl This is the macro config file used to generate the /etc/sendmail.cf
dnl file. If you modify thei file you will have to regenerate the
dnl /etc/sendmail.cf by running this macro config through the m4
dnl preprocessor:
dnl
dnl m4 /etc/sendmail.mc > /etc/sendmail.cf
dnl
dnl You will need to have the sendmail-cf package installed for this to
dnl work.
include(`/usr/lib/sendmail-cf/m4/cf.m4')
define(`confDEF_USER_ID',``8:12'')
OSTYPE(`linux')
undefine(`UUCP_RELAY')
undefine(`BITNET_RELAY')
define(`confAUTO_REBUILD')
define(`confTO_CONNECT', `1m')
define(`confTRY_NULL_MX_LIST',true)
define(`confDONT_PROBE_INTERFACES',true)
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')
FEATURE(`smrsh',`/usr/sbin/smrsh')
FEATURE(`mailertable',`hash -o /etc/mail/mailertable')
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable')
FEATURE(redirect)
FEATURE(always_add_domain)
FEATURE(use_cw_file)
FEATURE(local_procmail)
MAILER(procmail)
MAILER(smtp)
FEATURE(`access_db')
FEATURE(`blacklist_recipients')
dnl We strongly recommend to comment this one out if you want to protect
dnl yourself from spam. However, the laptop and users on computers that do
dnl not hav 24x7 DNS do need this.
FEATURE(`accept_unresolvable_domains')
dnl FEATURE(`relay_based_on_MX')
6HQGPDLOFI'RV\DV
#
# Copyright (c) 1998 Sendmail, Inc. All rights reserved.
# Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved.
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the sendmail distribution.
#
#
######################################################################
######################################################################
#####
##### SENDMAIL CONFIGURATION FILE
#####
##### built by root@porky.devel.redhat.com on Thu Feb 17 17:51:20 EST 2000
##### in /usr/src/bs/BUILD/sendmail-8.9.3/cf/cf
##### using ../ as configuration include directory
#####
######################################################################
######################################################################
##################
# local info #
##################
Cwlocalhost
# file containing names of hosts for which we receive email
Fw/etc/sendmail.cw
CP.
# who gets all local email traffic ($R has precedence for unqualified
names)
DH
# dequoting map
Kdequote dequote
# class E: names that should be exposed as from this host, even if we
masquerade
# class L: names that should be delivered locally, even if we have a relay
# class M: domains that should be converted to $M
#CL root
CE root
CPREDIRECT
###############
# Options #
###############
# log level
O LogLevel=9
# queue directory
O QueueDirectory=/var/spool/mqueue
# status file
O StatusFile=/var/log/sendmail.st
# fallback MX host
#O FallbackMXhost=fall.back.host.net
# if we are the best MX host for a site, try it directly instead of config
err
O TryNullMXList=true
# From: lines that have embedded newlines are unwrapped onto one line
#O SingleLineFromHeader=False
# Allow HELO SMTP command that does not include a host name
#O AllowBogusHELO=False
###########################
# Message precedences #
###########################
Pfirst-class=0
Pspecial-delivery=100
Plist=-30
Pbulk=-60
Pjunk=-100
#####################
# Trusted users #
#####################
H?P?Return-Path: <$g>
HReceived: $?sfrom $s $.$?_($?s$|from $.$_)
$.by $j ($v/$Z)$?r with $r$. id $i$?u
for $u; $|;
$.$b
H?D?Resent-Date: $a
H?D?Date: $a
H?F?Resent-From: $?x$x <$g>$|$g$.
H?F?From: $?x$x <$g>$|$g$.
H?x?Full-Name: $x
# HPosted-Date: $a
# H?l?Received-Date: $b
H?M?Resent-Message-Id: <$t.$i@$j>
H?M?Message-Id: <$t.$i@$j>
#
######################################################################
######################################################################
#####
##### REWRITING RULES
#####
######################################################################
######################################################################
############################################
### Ruleset 3 -- Name Canonicalization ###
############################################
S3
# strip group: syntax (not inside angle brackets!) and trailing semicolon
R$* $: $1 <@> mark addresses
R$* < $* > $* <@> $: $1 < $2 > $3 unmark <addr>
R@ $* <@> $: @ $1 unmark @host:...
R$* :: $* <@> $: $1 :: $2 unmark node::addr
R:include: $* <@> $: :include: $1 unmark :include:...
R$* [ $* : $* ] <@> $: $1 [ $2 : $3 ] unmark IPv6 addrs
R$* : $* [ $* ] $: $1 : $2 [ $3 ] <@> remark if leading
colon
R$* : $* <@> $: $2 strip colon if marked
R$* <@> $: $1 unmark
R$* ; $1 strip trailing semi
R$* < $* ; > $1 < $2 > bogus bracketed semi
################################################
### Ruleset 96 -- bottom half of ruleset 3 ###
################################################
S96
##################################################
### Ruleset 4 -- Final Output Post-rewriting ###
##################################################
S4
##############################################################
### Ruleset 97 -- recanonicalize and call ruleset zero ###
### (used for recursive calls) ###
##############################################################
S97
R$* $: $>3 $1
R$* $@ $>0 $1
######################################
### Ruleset 0 -- Parse Address ###
######################################
S0
#
# Parse0 -- do initial syntax checking and eliminate local addresses.
# This should either return with the (possibly modified) input
# or return with a #error mailer. It should not return with a
# #mailer other than the #error mailer.
#
SParse0
R<@> $@ <@> special case error msgs
R$* : $* ; <@> $#error $@ 5.1.3 $: "List:; syntax illegal for
recipient addresses"
#R@ <@ $* > < @ $1 > catch "@@host" bogosity
R<@ $+> $#error $@ 5.1.3 $: "User address required"
R$* $: <> $1
R<> $* < @ [ $+ ] > $* $1 < @ [ $2 ] > $3
R<> $* <$* : $* > $* $#error $@ 5.1.3 $: "Colon illegal in host name
part"
R<> $* $1
R$* < @ . $* > $* $#error $@ 5.1.2 $: "Invalid host name"
R$* < @ $* .. $* > $* $#error $@ 5.1.2 $: "Invalid host name"
# now delete the local info -- note $=O to find characters that cause
forwarding
R$* < @ > $* $@ $>Parse0 $>3 $1 user@ => user
R< @ $=w . > : $* $@ $>Parse0 $>3 $2 @here:... -> ...
R$- < @ $=w . > $: $(dequote $1 $) < @ $2 . > dequote "foo"@here
R< @ $+ > $#error $@ 5.1.3 $: "User address required"
R$* $=O $* < @ $=w . > $@ $>Parse0 $>3 $1 $2 $3 ...@here -> ...
R$- $: $(dequote $1 $) < @ *LOCAL* > dequote "foo"
R< @ *LOCAL* > $#error $@ 5.1.3 $: "User address required"
R$* $=O $* < @ *LOCAL* >
$@ $>Parse0 $>3 $1 $2 $3 ...@*LOCAL* -> ...
R$* < @ *LOCAL* > $: $1
#
# Parse1 -- the bottom half of ruleset 0.
#
SParse1
# handle numeric address spec
R$* < @ [ $+ ] > $* $: $>98 $1 < @ [ $2 ] > $3 numeric internet spec
R$* < @ [ $+ ] > $* $#esmtp $@ [$2] $: $1 < @ [$2] > $3 still numeric:
send
###########################################################################
### Ruleset 5 -- special rewriting after aliases have been expanded ###
###########################################################################
S5
###################################################################
### Ruleset 90 -- try domain part of mailertable entry ###
###################################################################
S90
R$* <$- . $+ > $* $: $1$2 < $(mailertable .$3 $@ $1$2 $@ $2 $) > $4
R$* <$~[ : $* > $* $>95 < $2 : $3 > $4 check -- resolved?
R$* < . $+ > $* $@ $>90 $1 . <$2> $3 no -- strip & try again
R$* < $* > $* $: < $(mailertable . $@ $1$2 $) > $3 try "."
R< $~[ : $* > $* $>95 < $1 : $2 > $3 "." found?
R< $* > $* $@ $2 no mailertable match
###################################################################
### Ruleset 95 -- canonify mailer:[user@]host syntax to triple ###
###################################################################
S95
R< > $* $@ $1 strip off null relay
R< error : $- $+ > $* $#error $@ $(dequote $1 $) $: $2
R< local : $* > $* $>CanonLocal < $1 > $2
R< $- : $+ @ $+ > $*<$*>$* $# $1 $@ $3 $: $2<@$3> use literal user
R< $- : $+ > $* $# $1 $@ $2 $: $3 try qualified mailer
R< $=w > $* $@ $2 delete local host
R< $+ > $* $#relay $@ $1 $: $2 use unqualified mailer
###################################################################
### Ruleset CanonLocal -- canonify local: syntax ###
###################################################################
SCanonLocal
# strip local host from routed addresses
R< $* > < @ $+ > : $+ $@ $>97 $3
R< $* > $+ $=O $+ < @ $+ > $@ $>97 $2 $3 $4
# strip trailing dot from any host name that may appear
R< $* > $* < @ $* . > $: < $1 > $2 < @ $3 >
# handle local: syntax -- use old user, either with or without host
R< > $* < @ $* > $* $#local $@ $1@$2 $: $1
R< > $+ $#local $@ $1 $: $1
###################################################################
### Ruleset 93 -- convert header names to masqueraded form ###
###################################################################
S93
###################################################################
### Ruleset 94 -- convert envelope names to masqueraded form ###
###################################################################
S94
R$* < @ *LOCAL* > $* $: $1 < @ $j . > $2
###################################################################
### Ruleset 98 -- local part of ruleset zero (can be null) ###
###################################################################
S98
######################################################################
### LookUpDomain -- search for domain in access database
###
### Parameters:
### <$1> -- key (domain name)
### <$2> -- default (what to return if not found in db)
### <$3> -- passthru (additional data passed unchanged through)
######################################################################
SLookUpDomain
R<$+> <$+> <$*> $: < $(access $1 $: ? $) > <$1> <$2> <$3>
R<?> <$+.$+> <$+> <$*> $@ $>LookUpDomain <$2> <$3> <$4>
R<?> <$+> <$+> <$*> $@ <$2> <$3>
R<$*> <$+> <$+> <$*> $@ <$1> <$4>
######################################################################
### LookUpAddress -- search for host address in access database
###
### Parameters:
### <$1> -- key (dot quadded host address)
### <$2> -- default (what to return if not found in db)
### <$3> -- passthru (additional data passed through)
######################################################################
SLookUpAddress
R<$+> <$+> <$*> $: < $(access $1 $: ? $) > <$1> <$2> <$3>
R<?> <$+.$-> <$+> <$*> $@ $>LookUpAddress <$1> <$3> <$4>
R<?> <$+> <$+> <$*> $@ <$2> <$3>
R<$*> <$+> <$+> <$*> $@ <$1> <$4>
######################################################################
### CanonAddr -- Convert an address into a standard form for
### relay checking. Route address syntax is
### crudely converted into a %-hack address.
###
### Parameters:
### $1 -- full recipient address
###
### Returns:
### parsed address, not in source route form
######################################################################
SCanonAddr
R$* $: $>Parse0 $>3 $1 make domain canonical
R< @ $+ > : $* @ $* < @ $1 > : $2 % $3 change @ to % in src route
R$* < @ $+ > : $* : $* $3 $1 < @ $2 > : $4 change to % hack.
R$* < @ $+ > : $* $3 $1 < @ $2 >
######################################################################
### ParseRecipient -- Strip off hosts in $=R as well as possibly
### $* $=m or the access database.
### Check user portion for host separators.
###
### Parameters:
### $1 -- full recipient address
###
### Returns:
### parsed, non-local-relaying address
######################################################################
SParseRecipient
R$* $: <?> $>CanonAddr $1
R<?> $* < @ $* . > <?> $1 < @ $2 > strip trailing
dots
R<?> $- < @ $* > $: <?> $(dequote $1 $) < @ $2 > dequote local
part
######################################################################
### check_relay -- check hostname/address on SMTP startup
######################################################################
SLocal_check_relay
Scheck_relay
R$* $: $1 $| $>"Local_check_relay" $1
R$* $| $* $| $#$* $#$3
R$* $| $* $| $* $@ $>"Basic_check_relay" $1 $| $2
SBasic_check_relay
# check for deferred delivery mode
R$* $: < ${deliveryMode} > $1
R< d > $* $@ deferred
R< $* > $* $: $2
######################################################################
### check_mail -- check SMTP `MAIL FROM:' command argument
######################################################################
SLocal_check_mail
Scheck_mail
R$* $: $1 $| $>"Local_check_mail" $1
R$* $| $#$* $#$2
R$* $| $* $@ $>"Basic_check_mail" $1
SBasic_check_mail
# check for deferred delivery mode
R$* $: < ${deliveryMode} > $1
R< d > $* $@ deferred
R< $* > $* $: $2
R<> $@ <OK>
R$* $: <?> $>CanonAddr $1
R<?> $* < @ $+ . > <?> $1 < @ $2 > strip trailing dots
# handle non-DNS hostnames (*.bitnet, *.decnet, *.uucp, etc)
R<?> $* < $* $=P > $* $: <OK> $1 < @ $2 $3 > $4
R<?> $* < @ $+ > $* $: <OK> $1 < @ $2 > $3 ... unresolvable OK
######################################################################
### check_rcpt -- check SMTP `RCPT TO:' command argument
######################################################################
SLocal_check_rcpt
Scheck_rcpt
R$* $: $1 $| $>"Local_check_rcpt" $1
R$* $| $#$* $#$2
R$* $| $* $@ $>"Basic_check_rcpt" $1
SBasic_check_rcpt
# check for deferred delivery mode
R$* $: < ${deliveryMode} > $1
R< d > $* $@ deferred
R< $* > $* $: $2
# check IP address
R$* $: $&{client_addr}
R$@ $@ OK originated locally
R0 $@ OK originated locally
R$=R $* $@ OK relayable IP address
R$* $: $>LookUpAddress <$1> <?> <$1>
R<RELAY> $* $@ RELAY relayable IP address
R<$*> <$*> $: $2
R$* $: [ $1 ] put brackets around it...
R$=w $@ OK ... and see if it is local
#######################################################################
######################################################################
#####
##### MAILER DEFINITIONS
#####
######################################################################
######################################################################
######################*****##############
### PROCMAIL Mailer specification ###
##################*****##################
#####################################
### SMTP Mailer specification ###
#####################################
#
# envelope sender rewriting
#
S11
R$+ $: $>51 $1 sender/recipient common
R$* :; <@> $@ list:; special case
R$* $: $>61 $1 qualify unqual'ed names
R$+ $: $>94 $1 do masquerading
#
# envelope recipient rewriting --
# also header recipient if not masquerading recipients
#
S21
R$+ $: $>51 $1 sender/recipient common
R$+ $: $>61 $1 qualify unqual'ed names
#
# header sender and masquerading header recipient rewriting
#
S31
R$+ $: $>51 $1 sender/recipient common
R:; <@> $@ list:; special case
#
# convert pseudo-domain addresses to real domain addresses
#
S51
# do UUCP heuristics; note that these are shared with UUCP mailers
R$+ < @ $+ .UUCP. > $: < $2 ! > $1 convert to UUCP form
R$+ < @ $* > $* $@ $1 < @ $2 > $3 not UUCP form
#
# common sender and masquerading recipient rewriting
#
S61
R$+ $: $>61 $1
R$+ $: $>93 $1
##################################################
### Local and Program Mailer specification ###
##################################################
#
# Envelope sender rewriting
#
S10
R<@> $n errors to mailer-daemon
R@ <@ $*> $n temporarily bypass Sun bogosity
R$+ $: $>50 $1 add local domain if needed
R$* $: $>94 $1 do masquerading
#
# Envelope recipient rewriting
#
S20
R$+ < @ $* > $: $1 strip host part
#
# Header sender rewriting
#
S30
R<@> $n errors to mailer-daemon
R@ <@ $*> $n temporarily bypass Sun bogosity
R$+ $: $>50 $1 add local domain if needed
R$* $: $>93 $1 do masquerading
#
# Header recipient rewriting
#
S40
R$+ $: $>50 $1 add local domain if needed
#
# Common code to add local domain name (only if always-add-domain)
#
S50
R$* < @ $* > $* $@ $1 < @ $2 > $3 already fully qualified
R$+ $@ $1 < @ *LOCAL* > add local qualification
Ek D Firewall Kodu
#!/bin/bash
#
# Created By Umut Gokbayrak
#
# ========================================================================
# Preperation Process
# ========================================================================
# ========================================================================
# ========================================================================
# ========================================================================
# ========================================================================
# ========================================================================
# ========================================================================
;;;;;;;;;;;;;;;;;;;
; About this file ;
;;;;;;;;;;;;;;;;;;;
; This file controls many aspects of PHP's behavior. In order for PHP to
; read it, it must be named 'php.ini'. PHP looks for it in the current
; working directory, in the path designated by the environment variable
; PHPRC, and in the path that was defined in compile time (in that order).
; Under Windows, the compile-time path is the Windows directory. The
; path in which the php.ini file is looked for can be overriden using
; the -c argument in command line mode.
;
; The syntax of the file is extremely simple. Whitespace and Lines
; beginning with a semicolon are silently ignored (as you probably
guessed).
; Section headers (e.g. [Foo]) are also silently ignored, even though
; they might mean something in the future.
;
; Directives are specified using the following syntax:
; directive = value
; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
;
; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI),
one
; of the INI constants (On, Off, True, False, Yes, No and None) or an
expression
; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo").
;
; Expressions in the INI file are limited to bitwise operators and
parentheses:
; | bitwise OR
; & bitwise AND
; ~ bitwise NOT
;
; Boolean flags can be turned on using the values 1, On, True or Yes.
; They can be turned off using the values 0, Off, False or No.
;
; An empty string can be denoted by simply not writing anything after the
equal
; sign, or by using the None keyword:
;
; foo = ; sets foo to an empty string
; foo = none ; sets foo to an empty string
; foo = "none" ; sets foo to the string 'none'
;
; If you use constants in your value, and these constants belong to a
dynamically
; loaded extension (either a PHP extension or a Zend extension), you may
only
; use these constants *after* the line that loads the extension.
;
; All the values in the php.ini-dist file correspond to the builtin
; defaults (that is, if no php.ini is used, or if you delete these lines,
; the builtin defaults will be identical).
;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;
; Safe Mode
safe_mode = Off
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_ ; Setting
certain environment variables
; may be a potential security breach.
; variable!
safe_mode_protected_env_vars = LD_LIBRARY_PATH ; This directive
contains a comma-
; even if safe_mode_allowed_env_vars is
; Misc
expose_php = On ; Decides whether PHP may expose the fact that
it is installed on the
; server (e.g., by adding its signature
to the Web server header).
; It is no security threat in any way,
but it makes it possible
; to determine whether you use PHP on
your server or not.
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; error_reporting is a bit-field. Or each number up to get desired error
reporting level
; E_ALL - All errors and warnings
; E_ERROR - fatal run-time errors
; E_WARNING - run-time warnings (non fatal errors)
; E_PARSE - compile-time parse errors
; E_NOTICE - run-time notices (these are warnings which often
result from a bug in
; your code, but it's possible that it was
intentional (e.g., using an
; uninitialized variable and relying on the
fact it's automatically
; initialized to an empty string)
; E_CORE_ERROR - fatal errors that occur during PHP's initial
startup
; E_CORE_WARNING - warnings (non fatal errors) that occur during PHP's
initial startup
; E_COMPILE_ERROR - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non fatal errors)
; E_USER_ERROR - user-generated error message
; E_USER_WARNING - user-generated warning message
; E_USER_NOTICE - user-generated notice message
; Examples:
; error_reporting = E_ALL & ~E_NOTICE ; show all errors,
except for notices
; error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR ; show only
errors
error_reporting = E_ALL|E_PARSE|E_USER_WARNING|E_NOTICE
display_errors = Off
log_errors = Off ; Log errors into a log file (server-specific
log, stderr, or error_log (below))
track_errors = Off ; Store the last error/warning message in
$php_errormsg (boolean)
;error_prepend_string = "<font color=ff0000>" ; string to output before
an error message
;error_append_string = "</font>" ; string to output after an
error message
;error_log = filename ; log errors to specified file
;error_log = syslog ; log errors to syslog (Event Log on NT,
not valid in Windows 95)
warn_plus_overloading = Off ; warn if the + operator is used
with strings
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
variables_order = "EGPCS" ; This directive describes the
order in which PHP registers
; GET, POST, Cookie,
Environment and Built-in variables (G, P,
; C, E & S respectively,
often referred to as EGPCS or GPC).
; Registration is done from
left to right, newer values override
; older values.
register_globals = On ; Whether or not to register the EGPCS
variables as global
; variables. You may want
to turn this off if you don't want
; to clutter your scripts'
global scope with user data. This makes
; most sense when coupled
with track_vars - in which case you can
; access all of the GPC
variables through the $HTTP_*_VARS[],
; variables.
register_argc_argv = On ; This directive tells PHP whether
to declare the argv&argc
; variables (that would
contain the GET information). If you
; don't use these variables,
you should turn it off for
; increased performance
track_vars = On ; enable the $HTTP_*_VARS[]
arrays, where * is one of
; ENV, POST, GET, COOKIE or
SERVER.
gpc_order = "GPC" ; This directive is deprecated. Use
variables_order instead.
; Magic quotes
magic_quotes_gpc = On ; magic quotes for incoming
GET/POST/Cookie data
magic_quotes_runtime= Off ; magic quotes for runtime-generated
data, e.g. data from SQL, from exec(), etc.
magic_quotes_sybase = Off ; Use Sybase-style magic quotes
(escape ' with '' instead of \')
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
include_path = ; UNIX: "/path1:/path2" Windows:
"\path1;\path2"
doc_root = ; the root of the php pages,
used only if nonempty
user_dir = ; the directory under which
php opens the script using /~username, used only if nonempty
;upload_tmp_dir = ; temporary directory for HTTP
uploaded files (will use system default if not specified)
upload_max_filesize = 2097152 ; 2 Meg default limit on file uploads
extension_dir = ./ ; directory in which the
loadable extensions (modules) reside
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
; if you wish to have an extension loaded automaticly, use the
; following syntax: extension=modulename.extension
; for example, on windows,
; extension=msql.dll
; or under UNIX,
; extension=msql.so
; Note that it should be the name of the module only, no directory
information
; needs to go here. Specify the location of the extension with the
extension_dir directive above.
;Windows Extensions
;extension=php_mysql.dll
;extension=php_nsmail.dll
;extension=php_calendar.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd.dll
;extension=php_dbm.dll
;extension=php_mssql.dll
;extension=php_zlib.dll
;extension=php_filepro.dll
;extension=php_imap4r2.dll
;extension=php_ldap.dll
;extension=php_crypt.dll
;extension=php_msql2.dll
;extension=php_odbc.dll
;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
[Syslog]
define_syslog_variables = Off ; Whether or not to define the various syslog
variables,
; e.g. $LOG_PID, $LOG_CRON,
etc. Turning it off is a
; good idea performance-
wise. In runtime, you can define
; these variables by calling
define_syslog_variables()
[mail function]
SMTP = localhost ;for win32 only
sendmail_from = me@localhost.com ;for win32 only
;sendmail_path = ;for unix only, may
supply arguments as well (default is sendmail -t)
[Debugger]
debugger.host = localhost
debugger.port = 7869
debugger.enabled = False
[Logging]
; These configuration directives are used by the example logging mechanism.
; See examples/README.logging for more explanation.
;logging.method = db
;logging.directory = /path/to/log/directory
[SQL]
sql.safe_mode = Off
[ODBC]
;uodbc.default_db = Not yet implemented
;uodbc.default_user = Not yet implemented
;uodbc.default_pw = Not yet implemented
uodbc.allow_persistent = On ; allow or prevent persistent links
uodbc.check_persistent = On ; check that a connection is still
validbefore reuse
uodbc.max_persistent = -1 ; maximum number of persistent links. -1
means no limit
uodbc.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
uodbc.defaultlrl = 4096 ; Handling of LONG fields. Returns number of
bytes to variables, 0 means passthru
uodbc.defaultbinmode = 1 ; Handling of binary data. 0 means
passthru, 1 return as is, 2 convert to char
; See the documentation on odbc_binmode and odbc_longreadlen for an
explanation of uodbc.defaultlrl
; and uodbc.defaultbinmode
[MySQL]
mysql.allow_persistent = On ; allow or prevent persistent link
mysql.max_persistent = -1 ; maximum number of persistent links. -1
means no limit
mysql.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
mysql.default_port = ; default port number for
mysql_connect(). If unset,
; mysql_connect() will use
the $MYSQL_TCP_PORT, or the mysql-tcp
; entry in /etc/services, or
the compile-time defined MYSQL_PORT
; (in that order). Win32
will only look at MYSQL_PORT.
mysql.default_host = ; default host for mysql_connect()
(doesn't apply in safe mode)
mysql.default_user = ; default user for mysql_connect()
(doesn't apply in safe mode)
mysql.default_password = ; default password for mysql_connect()
(doesn't apply in safe mode)
; Note that this is
generally a *bad* idea to store passwords
; in this file. *Any* user
with PHP access can run
; 'echo
cfg_get_var("mysql.default_password")' and reveal that
; password! And of course,
any users with read access to this
; file will be able to
reveal the password as well.
[mSQL]
msql.allow_persistent = On ; allow or prevent persistent link
msql.max_persistent = -1 ; maximum number of persistent
links. -1 means no limit
msql.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
[PostgresSQL]
pgsql.allow_persistent = On ; allow or prevent persistent link
pgsql.max_persistent = -1 ; maximum number of persistent links. -1
means no limit
pgsql.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
[Sybase]
sybase.allow_persistent = On ; allow or prevent persistent link
sybase.max_persistent = -1 ; maximum number of persistent links. -1
means no limit
sybase.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
;sybase.interface_file = "/usr/sybase/interfaces"
sybase.min_error_severity = 10 ; minimum error severity to
display
sybase.min_message_severity = 10 ; minimum message severity to
display
sybase.compatability_mode = Off ; compatability mode with old versions
of PHP 3.0.
; If on, this will
cause PHP to automatically assign types to results
; according to their
Sybase type, instead of treating them all as
; strings. This
compatability mode will probably not stay around
; forever, so try
applying whatever necessary changes to your code,
; and turn it off.
[Sybase-CT]
sybct.allow_persistent = On ; allow or prevent persistent link
sybct.max_persistent = -1 ; maximum number of persistent
links. -1 means no limit
sybct.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
sybct.min_server_severity = 10 ; minimum server message severity
to display
sybct.min_client_severity = 10 ; minimum client message severity
to display
[bcmath]
bcmath.scale = 0 ; number of decimal digits for all bcmath
functions
[browscap]
;browscap = extra/browscap.ini
[Informix]
ifx.default_host = ; default host for ifx_connect()
(doesn't apply in safe mode)
ifx.default_user = ; default user for ifx_connect()
(doesn't apply in safe mode)
ifx.default_password = ; default password for
ifx_connect() (doesn't apply in safe mode)
ifx.allow_persistent = On ; allow or prevent persistent link
ifx.max_persistent = -1 ; maximum number of persistent
links. -1 means no limit
ifx.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
ifx.textasvarchar = 0 ; if set on, select statements return
the contents of a text blob instead of it's id
ifx.byteasvarchar = 0 ; if set on, select statements return
the contents of a byte blob instead of it's id
ifx.charasvarchar = 0 ; trailing blanks are stripped from
fixed-length char columns. May help the life
; of Informix SE users.
ifx.blobinfile = 0 ; if set on, the contents of
text&byte blobs are dumped to a file instead of
; keeping them in memory
ifx.nullformat = 0 ; NULL's are returned as empty
strings, unless this is set to 1. In that case,
; NULL's are returned as string 'NULL'.
[Session]
session.save_handler = files ; handler used to store/retrieve data
session.save_path = /tmp ; argument passed to save_handler
; in the case of files, this is the
; path where data files are stored
session.use_cookies = 1 ; whether to use cookies
session.name = PHPSESSID
; name of the session
; is used as cookie name
session.auto_start = 0 ; initialize session on request startup
session.cookie_lifetime = 0 ; lifetime in seconds of cookie
; or if 0, until browser is restarted
session.cookie_path = / ; the path the cookie is valid for
session.cookie_domain = ; the domain the cookie is valid for
session.serialize_handler = php ; handler used to serialize data
; php is the standard serializer of PHP
session.gc_probability = 1 ; percentual probability that the
; 'garbage collection' process is
started
; on every session initialization
session.gc_maxlifetime = 1440 ; after this number of seconds, stored
; data will be seen as 'garbage' and
; cleaned up by the gc process
session.referer_check = ; check HTTP Referer to invalidate
; externally stored URLs containing ids
session.entropy_length = 0 ; how many bytes to read from the file
session.entropy_file = ; specified here to create the session
id
; session.entropy_length = 16
; session.entropy_file = /dev/urandom
session.cache_limiter = nocache ; set to {nocache,private,public} to
; determine HTTP caching aspects
session.cache_expire = 180 ; document expires after n minutes
[MSSQL]
;extension=php_mssql.dll
mssql.allow_persistent = On ; allow or prevent persistent link
mssql.max_persistent = -1 ; maximum number of persistent
links. -1 means no limit
mssql.max_links = -1 ; maximum number of links
(persistent+non persistent). -1 means no limit
mssql.min_error_severity = 10 ; minimum error severity to
display
mssql.min_message_severity = 10 ; minimum message severity to
display
mssql.compatability_mode = Off ; compatability mode with old versions
of PHP 3.0.
[Assertion]
;assert.active = On ; assert(expr); active by
default
;assert.warning = On ; issue a PHP warning for
each failed assertion.
;assert.bail = Off ; don't bail out by default.
;assert.callback = 0 ; user-function to be called if an
assertion fails.
;assert.quiet_eval = 0 ; eval the expression with
current error_reporting(). set to true if you want error_reporting(0)
around the eval().
; Local Variables:
; tab-width: 4
; End:
zend_optimizer.optimization_level=7
zend_extension="/usr/lib/ZendOptimizer.so"
Ek F *3//LVDQV6|]OHPHVL2ULMLQDOL
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free
Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
Ek G 3RVWDFQQ$\UQWO.XUXOXP'RV\DV
cd php-4.0
cp php.ini-dist /usr/local/lib/php.ini
// bu dosya iersindeki display_errors = On yazan yeri Off olararak
GHLWLULQL]
pico /usr/local/lib/php.ini
3RVWDF
QQ NXUXOXPX
------------------
%X DDPD\D NDGDU DGP DGP WDNLS HWWL\VHQL] X DQGD oDOU ELU 3+3,0$3
GHVWHL YHUHQ ELU ZHE VXQXFXQX] ROPDOGU :HE VXQXFXQX]XQ VRUXQVX]
oDOWQ
"/home/httpd/bin/apachectl start" komutu ile test edebilirsiniz. Komutu
verdikten sonra "ps -ax | grep httpd" komXWXQGD KWWSG
QLQ oDOWQ
J|VWHULU ELU oNW DO\RUVDQ]
KHU H\ \ROXQGD GHPHNWLU
DDPD 0\64/ D\DUODPDODU
Program sanal e-SRVWD GL]LQOHUL ROXWXUXUNHQ H-SRVWDODU YHULWDEDQQD
PHWLQ \D GD LOHQPHPL YHUL RODUDN J|PPHNWHGLU 0\64/
LQ YDUVD\ODn olarak
bir alana
PDNVLPXP 0% YHUL JLULOPHVLQH L]LQ YHUPHVL YH EX DODQQ SHN oRN
NXOODQFQQ HNOHQWLOHUL LoLQ \HWHUOL ROPD\QGDQ GROD\ EX NVWODPD\
NDOGUPDP] JHUHNOLGLU %XQX \DSPDN
LoLQ 0\64/
LQ DoO VFULSWLQL GHLWLUHFHL]
(HU 0\64/
L \XNDUGD DQODWOG JLEL 5HG +DW ELU VLVWHPH USP GRV\DODU
LOH NXUPXVDQ] 0\64/
LQ EDODQJo VFULSWL HWFUFGLQLWGP\VTOG
GRV\DVGU 6L] GH NHQGL
VLVWHPLQL]GH EX GRV\D\ EXOXQX] YH LoHULVLQGH P\VTOG
\L oDUDQ NRPXW
VDWUQ EXODUDN X HNLOGH GHLtiriniz.
safe_mysqld --user=$mysql_daemon_user --pid-file=$pid_file --
datadir=$datadir -O key_buffer=16M -O table_cache=128 -O sort_buffer=4M
-O record_buffer=1M -O max_allowed_packet=24M &
LPGL GH $SDFKH
\H SKS GRV\DODUQ 3+3 \RUXPOD\VQQ LOHPHVL JHUHNWLLQL
EHOLUWPHPL] JHUHNOLGLU %XQXQ LoLQ \LQH KWWSGFRQI GRV\DV LoHUVLQGH SKS
iin
ve php4 iin de
DDPD 0\64/
GH ELU YHULWDEDQ \DUDWOPDV YH ELU NXOODQF WD\LQ
edilmesi.
PRVWDF
\L NXOODQPDN LoLQ \HWNLOL ELU YHULWDEDQ NXOODQFV \DUDWPDO\]
includes/global.inc
GRV\DVQGD YDUVD\ODQ NXOODQF RODUDN GEXVHU JHOPHNWHGLU %X NXOODQF\D
KDNODUQ YHUPHN LoLQ VUDV
LOH X NRPXWODU YHULQL]
$ mysql postaci
mysql > grant usage on postaci.* to dbuser@localhost;
mysql > grant select,insert,delete,update on postaci.* to
dbuser@localhost;
mysql > exit;
$ mysqladmin -X GEXVHU SDVVZRUG 9(57$%$1,B.8//$1,&,6,B)5(6