Phpinfo ගොනුවක් සාදා PHP තොරතුරු පරීක්ෂා කරන්නේ කෙසේද? PHP අවධානය යොමු කරන තොරතුරු php භාවිතයෙන් ගොනු කාර්යක්ෂමව ලබා දෙන්න

(PHP 3, PHP 4, PHP 5)

phpinfo - PHP පිළිබඳ බොහෝ තොරතුරු පෙන්වයි.

විස්තර

int phpinfo()

වත්මන් PHP තත්ත්වය පිළිබඳ තොරතුරු විශාල ප්‍රමාණයක් පෙන්වයි. මෙයට PHP සම්පාදන විකල්ප සහ දිගු, PHP අනුවාදය, සේවාදායකය සහ පරිසර තොරතුරු (මොඩියුලයක් ලෙස සම්පාදනය කර ඇත්නම්), PHP පරිසරය, OS අනුවාදය, මාර්ග, ප්‍රධාන සහ දේශීය වින්‍යාස විකල්ප විචල්‍යයන්, HTTP සහ PHP බලපත්‍ර ශීර්ෂ පිළිබඳ තොරතුරු ඇතුළත් වේ. සෑම පද්ධතියක්ම වෙනස් ලෙස වින්‍යාස කර ඇති බැවින්, phpinfo() සාමාන්‍යයෙන් වින්‍යාස සැකසුම් සහ දී ඇති පද්ධතියක පූර්ව නිර්වචනය කළ විචල්‍යයන් තිබේද යන්න පරීක්ෂා කිරීමට භාවිතා කරයි. Phpinfo() ද වැදගත් දෝශ නිරාකරණ උපයෝගීතාවයකි, මන්ද එහි සියලුම EGPCS දත්ත (පරිසරය, GET, POST, කුකී, සේවාදායකය). පහත සඳහන් එකක් හෝ කිහිපයක් සම්මත කිරීමෙන් ප්‍රතිදානය විශේෂිත කළ හැක නියතබිට් අගයන් වෛකල්පිත පරාමිතිය තුළ සාරාංශ කර ඇත. මෙහෙයුම භාවිතයෙන් ඔබට අනුරූප නියත හෝ බිට් අගයන් ඒකාබද්ධ කළ හැකිය.

වගුව 1. phpinfo() විකල්ප
නම (ස්ථාවර) අගය විස්තරය INFO_GENERAL1 වින්‍යාස තන්තුව, php.ini ස්ථානය, ගොඩනැගීමේ දිනය, වෙබ් සේවාදායකය, පද්ධතිය, ආදිය.INFO_CREDITS2PHP ණය 4.බලන්න. phpcredits() .INFO_CONFIGURATION4php විධානවල වත්මන් දේශීය සහ ප්‍රධාන අගයන්.බලන්න. ද ini_get() .INFO_MODULES8 පටවන ලද මොඩියුල සහ ඒවායේ අනුරූප සැකසුම්. බලපත්‍ර faq .INFO_ALL-1ඉහත සියල්ල.මෙය පෙරනිමි අගයයි.

සටහන: expose_php වින්‍යාස සැකසීම අක්‍රිය කර ඇති විට ප්‍රදර්ශනය වන තොරතුරුවල කොටස් අක්‍රිය වේ. මෙයට PHP සහ Zend ලාංඡන සහ ණය ඇතුළත් වේ. බලන්න. තවද

ඕනෑම මෘදුකාංග, ඔබට ඔබේ වෙබ් සේවාදායකයේ ධාවනය කිරීමට අවශ්‍ය එය සපුරාලිය යුතු ඇතැම් අවශ්‍යතා ඇත. උදාහරණයක් ලෙස, WordPress සඳහා PHP 5.2.4 හෝ ඊට වැඩි අනුවාදයක් අවශ්‍ය වේ. සේවාදායකය මත පදනම්ව, ඔබට සමහර PHP සැකසුම් වෙනස් කළ හැකිය, අනෙක් ඒවා වෙනස් කිරීම තහනම් කර ඇත, කෙසේ වෙතත්, ඒ සියල්ල පිළිබඳ තොරතුරු phpinfo ගොනුවෙන් සොයාගත හැකිය. මෙම නිබන්ධනයේදී, ඔබ phpinfo ගොනුවක් සාදා ගන්නේ කෙසේද සහ PHP මොඩියුලවල අගයන් සහ තත්ත්වය සොයා ගන්නේ කෙසේදැයි ඉගෙන ගනු ඇත. මෙය max_execution_time, memory_limit, post_max_size සහ වෙනත් ඔබගේ සත්කාරක ගිණුම පිළිබඳ තොරතුරු ලබා ගැනීමට ද ප්‍රයෝජනවත් විය හැක.

ඔබ මෙම මාර්ගෝපදේශය ආරම්භ කිරීමට පෙර, ඔබට පහත සඳහන් දෑ අවශ්ය වනු ඇත:

  • ඔබගේ සත්කාරක පාලන පැනලය හෝ FTP ගිණුම වෙත ප්‍රවේශය

විකල්ප 1 - ඔබගේ සත්කාරක පාලන පැනලය හරහා PHP තොරතුරු පරීක්ෂා කිරීම

Hostinger හි, ඔබගේ ගිණුමේ PHP තොරතුරු සොයා ගත හැක උසස් → PHP තොරතුරු. ඔබගේ සත්කාරකයේ අමතර ගොනු සෑදීමට ඔබට අවශ්‍ය නොවන බැවින් මෙය ඉතා පහසු අංගයකි.

මෙයින් පසු, ඔබගේ PHP අනුවාදය, මොඩියුල සහ අගයන් පිළිබඳ අවශ්‍ය සියලු තොරතුරු සහිත පිටුවකට ඔබව ගෙන යනු ඇත. නිශ්චිත මොඩියුලයක් හෝ කාර්යයක් සෙවීමට, යතුරුපුවරු කෙටිමඟ එබීමෙන් සෙවුම භාවිතා කරන්න CTRL+F.

සුභ පැතුම්! Hostinger පාලන පැනලය හරහා ඔබගේ php තොරතුරු වෙත ප්‍රවේශ වන ආකාරය ඔබ ඉගෙන ගෙන ඇත.

විකල්ප 2 - phpinfo.php ගොනුවක් නිර්මාණය කිරීමෙන් PHP තොරතුරු පරීක්ෂා කිරීම

ඔබගේ සත්කාරක වේදිකාව පෙන්වා ඇති විශේෂාංගයට සහය නොදක්වන්නේ නම් කරදර නොවන්න විකල්ප 1. ඔබගේ සත්කාරක ගිණුම තුළ විශේෂ ගොනුවක් නිර්මාණය කිරීමෙන් එම ප්රතිඵලයම ලබා ගත හැක. ගොනුව ඔබගේ PHP පිළිබඳ සියලු තොරතුරු ද පෙන්වන අතර බ්‍රවුසරය හරහා ප්‍රවේශ විය හැක.

පියවර 2.1 - phpinfo ගොනුවක් සාදන්න

Phpinfo ගොනුවක් සෑදීමට ක්රම කිහිපයක් තිබේ. මෙම නිබන්ධනයේදී අපි භාවිතා කරනු ඇත. කෙසේ වෙතත්, ඔබගේ මත ගොනුවක් නිර්මාණය කිරීමෙන් එම ප්රතිඵලයම ලබා ගත හැක දේශීය පරිගණකයසහ හරහා ගොනුව තවදුරටත් සේවාදායකය වෙත උඩුගත කිරීම.

ඔබගේ සත්කාරක පාලක පැනලයට ලොග් වී විවෘත කරන්න ගොනු කළමනාකරු . බොත්තම ක්ලික් කරන්න නව ගොනුවනව ගොනුවක් සෑදීමට.

පළමු ක්ෂේත්රයේ, එය නිර්මාණය කරන මාර්ගය සඳහන් කරන්න නව ගොනුව. ඊළඟට, ක්ෂේත්රයේ නව ගොනු නාමයඇතුල් කරන්න phpinfo.php. බොහෝ අවස්ථාවලදී ඔබට මාර්ගය නොවෙනස්ව තැබිය හැකිය /public_html. මෙම අවස්ථාවේදී, ගොනුව ඔබේ වෙබ් අඩවියේ මූල නාමාවලිය තුළ නිර්මාණය වේ.

පියවර 2.2 - ගොනුව සංස්කරණය කිරීම

මෙම අදියරේදී ඔබට දැනටමත් හිස් ගොනුවක් ඇත phpinfo.phpනාමාවලියෙහි public_html. පහත කේතය ගොනුවකට පිටපත් කර අයිකනය ක්ලික් කරන්න සුරකින්නතිරයේ වම් කෙළවරේ.

එපමණයි, ඔබ සාර්ථකව නිර්මාණය කර ඇත PHP ගොනුවඑය ඔබගේ සියලුම PHP විකල්ප පෙන්වයි. කලින් සඳහන් කළ පරිදි, එම ප්රතිඵලය භාවිතයෙන් ලබා ගත හැක:

  1. ඕනෑම දෙයක් භාවිතා කරන්න පෙළ සංස්කාරකයසහ ගොනුවක් සාදන්න phpinfo.phpඔබේ පරිගණකයේ.
  2. ගොනුවට පහත කේතය එක් කරන්න:
  1. FTP භාවිතයෙන් ගොනුව ඔබගේ නාමාවලියට උඩුගත කරන්න public_html.

පියවර 2.3 - බ්‍රව්සරය හරහා PHP තොරතුරු පරීක්ෂා කිරීම

සෑම දෙයක්ම නිවැරදිව සිදු කර ඇත්නම්, දැන් ඔබට ඔබේ වසම් නාමයේ අවසානයට එකතු කිරීමෙන් සාදන ලද ගොනුවට පිවිසිය හැකිය /phpinfo.php. උදා, http://yourdomain.ru/phpinfo.php

බ්‍රවුසරයක් හරහා මෙම පිටුව විවෘත කිරීමේදී ඔබ සමාන ප්‍රතිඵලයක් දැකිය යුතුය:

මෙම පිටුවෙහි ඔබට ඔබගේ සියලුම PHP සැකසුම් දැක ගත හැකි වනු ඇත.

නිගමනය

මෙම නිබන්ධනය අවසන් කිරීමෙන්, ඔබ phpinfo ගොනුවක් සාදා ඔබේ තොරතුරු පරීක්ෂා කරන්නේ කෙසේදැයි ඉගෙන ගෙන ඇත. PHP සැකසුම්. මෙම තොරතුරුඔබට ඔබගේ සත්කාරක සැකසුම් දැන ගැනීමට හෝ ඇතැම් PHP මොඩියුල අවශ්‍ය මෘදුකාංග ධාවනය කිරීමට අවශ්‍ය නම් එය ප්‍රයෝජනවත් වේ.

ඔබට ලිපිගොනු යැවීමට අවශ්‍ය නම්, වෙබ් සේවාදායකයෙන් නොව, වෙතින් PHP භාවිතා කරමින්(උදාහරණයක් ලෙස, බාගැනීම් සංඛ්‍යාලේඛන එකතු කිරීමට), කරුණාකර cat යටතේ.

1. readfile() භාවිතා කරන්න

මෙම ක්‍රමයේ ඇති හොඳ දෙය නම් එය කොටුවෙන් පිටත ක්‍රියා කිරීමයි. ඔබට අවශ්‍ය වන්නේ ඔබේම ගොනු යැවීමේ කාර්යය ලිවීමට පමණි (නිල ලේඛනයෙන් මඳක් වෙනස් කරන ලද උදාහරණය):

Function file_force_download($file) ((file_exist($file))) ( // buffer එක reset කරන්න PHP ප්‍රතිදානයස්ක්‍රිප්ටය සඳහා වෙන් කර ඇති මතකය පිටාර ගැලීම වැළැක්වීමට // මෙය සිදු නොකළහොත්, ගොනුව සම්පූර්ණයෙන්ම මතකයට කියවනු ඇත! if (ob_get_level()) ( ob_end_clean(); ) // ගොනු ශීර්ෂය සුරැකීම සඳහා කවුළුව පෙන්වීමට බ්‍රව්සරයට බල කරන්න("අන්තර්ගත විස්තරය: ගොනු හුවමාරුව"); ශීර්ෂකය ("අන්තර්ගත-වර්ගය: යෙදුම/ඔක්ටෙට්-ප්‍රවාහය"); ශීර්ෂකය("අන්තර්ගතය-පහර දැමීම: ඇමුණුම; ගොනු නාමය=". මූලික නාමය($ ගොනුව)); ශීර්ෂකය("අන්තර්ගත-මාරු-කේතනය: ද්විමය ") ; ශීර්ෂකය("කල් ඉකුත් වේ: 0"); ශීර්ෂකය("හැඹිලි-පාලනය: නැවත වලංගු කළ යුතුය"); ශීර්ෂකය("ප්‍රග්මා: පොදු"); ශීර්ෂකය("අන්තර්ගත දිග: ". ගොනු ප්‍රමාණය($ ගොනුව)); // ගොනුව කියවා එය පරිශීලක කියවන්නා වෙත යවන්න ($ ගොනුව); පිටවීම; ) )
PHP විසින් ගොනුව කියවා වහාම පරිශීලකයාට කොටස් වශයෙන් ලබා දෙන බැවින් විශාල ගොනු පවා මේ ආකාරයෙන් යැවිය හැක. ප්‍රලේඛනයේ පැහැදිලිව සඳහන් වන්නේ readfile() නොකළ යුතුයමතක ගැටළු ඇති කරයි.

සුවිශේෂතා:

  • ගොනුව readfile() ශ්‍රිතයේ අභ්‍යන්තර බෆරය තුළට කියවනු ලැබේ, එහි ප්‍රමාණය 8kB වේ (2fast4rabbit ට ස්තුතියි)

2. ගොනුව අතින් කියවා යවන්න

පුද්ගලික එකකින් ලිපිගොනු යැවීමේදී ක්‍රමය එකම Drupal භාවිතා කරයි ගොනු පද්ධතිය(ගොනු සබැඳි හරහා කෙලින්ම ලබා ගත නොහැක):

කාර්යය file_force_download($file) ((file_exist($file))) ( // ස්ක්‍රිප්ට් සඳහා වෙන් කර ඇති මතකය පිටාර ගැලීම වැළැක්වීමට PHP ප්‍රතිදාන බෆරය නැවත සකසන්න // මෙය සිදු නොකළහොත්, ගොනුව සම්පූර්ණයෙන්ම මතකයට කියවනු ඇත! (ob_get_level()) ( ob_end_clean(); ) // ගොනු ශීර්ෂය ("අන්තර්ගත විස්තරය: ගොනු හුවමාරුව") සුරැකීමට කවුළුව පෙන්වීමට බ්‍රවුසරයට බල කරන්න; ශීර්ෂකය("අන්තර්ගත වර්ගය: යෙදුම/අෂ්ට-ප්‍රවාහය") ; ශීර්ෂකය ("අන්තර්ගතය-ඉවත් කිරීම: ඇමුණුම; ගොනු නාමය =". මූලික නම ($ ගොනුව)); ශීර්ෂකය ("අන්තර්ගත-මාරු-කේතනය: ද්විමය"); ශීර්ෂකය("කල් ඉකුත් වේ: 0"); ශීර්ෂකය("හැඹිලි- පාලනය: නැවත වලංගු කළ යුතුයි"); ශීර්ෂකය("ප්‍රග්මා: පොදු"); ශීර්ෂකය("අන්තර්ගත-දිග: ". ගොනු ප්‍රමාණය($ගොනුව)); // ගොනුව කියවා පරිශීලකයාට යවන්න ($fd = fopen නම්) ($file, "rb")) ( while (!feof($ fd)) ( print fread($fd, 1024); ) fclose($fd); ) exit; ) )
සුවිශේෂතා:

  • සම්පූර්ණ ගොනුව කියවා පරිශීලකයාට ලබා දෙන තෙක් ස්ක්‍රිප්ට් බලා සිටී.
  • සේවාදායක මතකය සුරැකීමට ඔබට ඉඩ සලසයි

3. වෙබ් සේවාදායක මොඩියුලය භාවිතා කරන්න

3a. Apache
XSendFile මොඩියුලය ඔබට විශේෂ ශීර්ෂයක් භාවිතයෙන් Apache වෙත ගොනුවක් යැවීමට ඉඩ සලසයි. Unix සහ Windows සඳහා අනුවාද 2.0.*, 2.2.* සහ 2.4.* යටතේ ඇත.

ධාරක සැකසුම් තුළ ඔබට විධානය භාවිතයෙන් ශීර්ෂ අන්තර්ක්‍රියා සක්‍රීය කිරීමට අවශ්‍ය වේ:
XSendFile ඔන්
ඔබට ගොනු සැකසිය හැකි නාමාවලි වල සුදු ලැයිස්තුවක් ද නියම කළ හැක. වැදගත්: ඔබට සේවාදායක පදනමක් තිබේ නම් වින්ඩෝස් මාර්ගයකැපිටල් ඩ්‍රයිව් අකුරක් ඇතුළත් විය යුතුය.

සංවර්ධකයාගේ වෙබ් අඩවියේ ඇති හැකි විකල්ප පිළිබඳ විස්තරය: https://tn123.org/mod_xsendfile/

ගොනුවක් යැවීමේ උදාහරණය:

Function file_force_download($file) ((file_exist($file) නම්)) ( header("X-SendFile: " . realpath($file)); header("Content-type: application/octet-stream"); ​​ශීර්ෂකය ("අන්තර්ගතය-ඉවත් කිරීම: ඇමුණුම; ගොනු නාමය=". මූලික නම($ගොනුව)); පිටවීම; ) )

3b. Nginx
Nginx හට විශේෂ ශීර්ෂයක් හරහා ගොනු පෙට්ටියෙන් පිටතට යැවිය හැක.

නිවැරදි ක්‍රියාකාරිත්වය සඳහා, ඔබට වින්‍යාස ගොනුව හරහා කෙලින්ම ෆෝල්ඩරයට ප්‍රවේශය ප්‍රතික්ෂේප කළ යුතුය:
ස්ථානය /ආරක්ෂිත/ (අභ්‍යන්තර; root /සමහර/මාර්ග;)
ගොනුවක් යැවීමේ උදාහරණය (ගොනුව /some/path/protected බහලුම තුළ තිබිය යුතුය):

Function file_force_download($file) ((file_exist($file) නම්)) ( header("X-Accel-Redirect:" . $file); header("Content-type: application/octet-stream"); ​​header( "අන්තර්ගතය - බැහැර කිරීම: ඇමුණුම; ගොනු නාමය = ". මූලික නම($ ගොනුව)); පිටවීම; ) )
නිල ලේඛන පිටුවේ වැඩි විස්තර

සුවිශේෂතා:

  • සියලුම උපදෙස් සම්පූර්ණ වූ වහාම පිටපත අවසන් වේ
  • භෞතිකව, ගොනුව යවනු ලබන්නේ වෙබ් සේවාදායක මොඩියුලය විසින්ම මිස PHP මගින් නොවේ
  • මතකය සහ සේවාදායක සම්පත් අවම පරිභෝජනය
  • උපරිම කාර්ය සාධනය

යාවත්කාලීන: Habrowser ilyaplot හොඳ උපදෙසක් ලබා දෙන්නේ application/octet-stream , නමුත් ගොනුවේ සැබෑ mime වර්ගය යැවීම වඩා හොඳ බවයි. උදාහරණයක් ලෙස, මෙය බ්රවුසරය ආදේශ කිරීමට ඉඩ සලසයි අවශ්ය වැඩසටහන්ගොනු සුරැකීමේ සංවාදයට.




ඉහල