حمآية الـ php والـ apache وإيضاً بنضع لهم أفضل الإعدادات بإذن الله
أولاً : نأتي إلى حماية الـ php
نكتب الأمر التالي :
كود PHP:
pico /usr/local/lib/php.ini
وتاكد من القيم التالية من خلآل البحث عنهآ بوآسطة الأختصار ctrl+w
كود PHP:
safe_mode = On
allow_url_fopen = Off
expose_php = Off
enable_dl = Off
register_globals = off
display_errors = Off
بعد ذالك نبحث عن الوظائف المعطلة بوآسطة الإختصار ctrl+w
كود PHP:
disable_functions
وضع امامة الدوآل الممنوعة
كود PHP:
"dl,system,exec,passthru,popen,shell_exec,proc_close,proc_open,proc_nice,proc_terminate
,pro_get_status,posix_getpwuid,posix_uname,openlog,syslog,ftp_exec,posix_uname,posix_ge
tpwuid,posix_getpwnam,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,g
et_current_user,chgrp,apache_note,apache_setenv,apache_child_terminate,closelog,debugge
r_off,debugger_on,ini_restore,escapeshellcmd,escapeshellarg,virtual,highlight_file,pclo
se,pcntl_exec,shellexec,chgrp,apache_setenv,define_syslog_variables,hw_root,allow_url_f
open,php_uname,posix_kill,apache_child_terminate,php_ini_scanned_files,ps_aux,chown,get
rsage,posixc,posame,chgrp,posix_setgid,apache_note,apache_setenv,mysql_list_dbs,glob,er
ror_log,ini_get_all,fileowner,sscanf,popen,popens,apache_get_modules,crack_check,crack_
closedict,crack_getlastmessage,crack_opendict,posix_isatty,posix_access,posix_times,pos
ix_mknod,get_cfg_var,getservbyname,inject_code,ftp_rawlist,ftp_raw,ftp_nb_fput,ftp_put,
ftp_get,ftp_login,ftp_nnect,ftp_exec,highlight_file,ini_set"
ونبحث عن القيمة الإفتراضية للوقت بوآسطة الإختصار ctrl+w
كود PHP:
max_execution_time = 300
يجب ان تكون القيمة = 300 ثانية
وبعدهآ مباشرة غير قيمة الـ
كود PHP:
max_input_time = 600
إيضاً يجب ان تكون القيمة = 600 ثانية
بعدهآ مباشرة نجد memory limit الا وهو وسع الذآكرة
كود PHP:
memory_limit = 94M
يجب تغير القيمة إلى 46M أو 94M
بعد ذالك نبحث عن حد رفع حجم الملفآت بوآسطة الإختصار ctrl+w
كود PHP:
upload_max_filesize = 15M
وغير القيمة إلى 10M
هذا الخيار مهم لوضع أقصى مساحة ملف ممكن رفعها من خيلآل الـ cPanel وهي الأفتراضي 2M ويفضل رفعها حسب رغبة صاحب الأستضافة .
وأخيراُ أبحث عن هالأمر
[PHP]post_max_size= 50M[PHP]
وضع القيمة مناسبة 50M
بعد ذالك أضف في نهاية الملف التالي : php.ini
للوصول إلى نهاية الملف قم بالضغط بشكل مسمتر على
ctrl +v
كود PHP:
; Solution Problem VB
suhosin.request.max_vars = 1024
suhosin.post.max_vars = 1024
قم بحفظ الملف بوآسطة ctrl+x رآح تظهر لديك رسآلة أختر حرف Y لحفظ العمل
ونعمل إعادة تشتغيل للـ apache
بعد ذآلك نتجه إلى الجزء الثاني من درسنا اليوم
ثآنياً : حمآية الـ apache
نذهب إلى ملف الـ apache
كود PHP:
pico /usr/local/apache/conf/httpd.conf
نضع في بدآية الـ apache القيمة التآلية :
كود PHP:
RLimitMEM 1161234090
RLimitCPU 350
لتعطيل البيرل في السيرفر :
أبحث عن الأمر التآلي بوآسطة الأختصار ctrl+w
كود PHP:
AddHandler cgi-script .cgi .pl
وضع أمامة العلآمة التالية ليصبح شكله
كود PHP:
#AddHandler cgi-script .cgi .pl
بعد ذالك أبحث عن الأمر التآلي بوآسطة الأختصار ctrl+w
وخليه بهالشكل
| اقتباس | | | | | | | | |
<Directory "/home">
Options -ExecCGI -FollowSymLinks -Includes IncludesNOEXEC Indexes -MultiViews SymLinksIfOwnerMatch
AllowOverride AuthConfig Indexes Limit FileInfo Options=IncludesNOEXEC,Indexes,Includes,MultiViews ,SymLinksIfOwnerMatch,FollowSymLinks
</Directory>
<Directory "/">
Options -ExecCGI -FollowSymLinks -Includes IncludesNOEXEC Indexes -MultiViews SymLinksIfOwnerMatch
AllowOverride AuthConfig Indexes Limit FileInfo Options=IncludesNOEXEC,Indexes,Includes,MultiViews ,SymLinksIfOwnerMatch,FollowSymLinks
</Directory> | | | | | |
ارجو توخي الحذر عن وضعه في الـ apache لكي لايحدث اي خطأ كما يحصل من الكثير
ثم أبحث عن الأمر التالي بوآسطة الأختصار ctrl+w
كود PHP:
ServerSignature ON
وخليه بوضع الـ OFF
وضع تحتهآ
كود PHP:
ServerTokens Prod
SecServerSignature "Security by****
مع الأخذ **** بأسم سيرفرك
قم بحفظ الملف بوآسطة ctrl+x بعدهآ رآح تظهر لديك رسآلة اختر حرف Y لحفظ العمل
بعدهآ نسوي إعآدة تشغيل للـ apache
انتهى الدرس أرجو الرد بكلمة شكر والتقييم وشكرا
plhdm hgJ php ,hgJ apache ,,qu gil Htqg hgYu]h]hj curva walid