ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΠΉΡΠ°
Π‘ΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΠΉΡΠ°
ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π»Ρ ΡΡΠ΄ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΈ ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ Π΅ΡΠ΅ Π΄ΠΎΠ΄ΡΠΌΠ°ΡΡΡΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΌΡΡΠΊΠΎΠΉ ΠΈ ΡΠΊΠ°ΡΠ°ΡΡ. ΠΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΡΠΎ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ. ΠΠΎΡΡΠΎΠΌΡ Ρ ΡΠ΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΡΠΎΡΠ΅Π½ΡΠΊΠΈΠΉ ΡΠΊΡΠΈΠΏΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ» Π±Ρ ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π±Π΅Π· ΠΎΡΠΊΡΡΡΠΈΡ Π΅Π³ΠΎ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ Π»ΠΈΡΡΠΈΠ½Π³ Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ.
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΠΈΡΠ°Π½ Π² php ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«download.phpΒ» ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ Π² ΠΏΠ°ΠΏΠΊΡ Β«filesΒ». Π€ΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ GET ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ file ΠΈ Π² ΡΡΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΈΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ test.xml ΠΈΠ»ΠΈ test.txt:
ΠΡΠΈ ΡΡΠΎΠΌ, Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠ» Π½Π°ΠΉΠ΄Π΅Π½ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Π²ΡΠΏΠ»ΡΠ²Π°Π΅Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ
ΠΠ΄Π½Π°ΠΊΠΎ, Π² ΡΠ°ΠΊΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠ°ΠΈΡΡΡ ΠΎΠ΄Π½Π° ΡΠ΅ΡΡΠ΅Π·Π½Π°Ρ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ Ρ Π²Π²Π΅Π΄Ρ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΡΠ°ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡ:
Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°ΡΠ½Π΅ΡΡΡ ΡΠΎ, ΡΠ΅Π³ΠΎ Π½ΠΈ Π² ΠΊΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ Π½Π΅Π»ΡΠ·Ρ! ΠΠ°ΡΠ½Π΅ΡΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΠ°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ° (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²Π²ΠΈΠ΄Ρ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ joomla, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π² ΡΠ°Π²Π½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²ΡΠ΅Ρ CMS). Π ΡΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΡΠ°Ρ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΡΡΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π²ΡΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΡ ΡΠ°ΠΉΡΠ°. Π Π²ΠΎΠΏΡΠΎΡ Π²Π·Π»ΠΎΠΌΠ° β ΡΡΠΎ ΡΠΆΠ΅ Π²ΠΎΠΏΡΠΎΡ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΡΠ°ΠΊΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠΊΡΠΈΠΏΡΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°, ΠΈΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
ΠΡΠΈΡΠ΅ΠΌ, ΡΠ°ΠΊ ΠΆΠ΅ Π² ΡΡΠΎΠΌ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΈ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ» Β«/Β» ΠΈ Β«.Β» (ΠΊΡΠΎΠΌΠ΅ ΡΠΎΡΠΊΠΈ Π² ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°). ΠΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π° ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π° Π² Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΡ Ρ Β«configuration.phpΒ», ΠΈΠ»ΠΈ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Π’ΠΎ Π΅ΡΡΡ, Π΄Π°Π½Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ xml ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠ°ΠΌ ΡΠΊΡΠΈΠΏΡ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π»ΡΠ±ΡΡ Β«txtΒ», Β«xmlΒ», Β«pdfΒ», Π° ΡΠ°ΠΊ ΠΆΠ΅ Π»ΡΠ±ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠΈΠΏΠ° Β«pngΒ», Β«gifΒ» ΠΈ ΠΏΡΠΎΡΠ΅Π΅β¦ Π ΠΎΠ±ΡΠ΅ΠΌ, ΡΡΡ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°ΠΌΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°. ΠΠ»Π°Π²Π½ΠΎΠ΅ Π½ΠΈ Π² ΠΊΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π½Π΅ΡΡΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π²Π°ΠΆΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, Π»ΠΎΠ³ΠΈΠ½Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»ΠΈ. ΠΡΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· ΡΠ°Π·Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠΎ ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎ ΡΠΎΠΌ ΡΡΠΎΠ±Ρ Π½Π΅ Π±ΡΠ»ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ ΡΠΈΠΏΠ° Β«administratorΒ» ΠΈΠ»ΠΈ Β«adminΒ», ΠΈΠ»ΠΈ ΠΈΠ· ΠΏΠ°ΠΏΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ°ΠΉΠ»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ CMS, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈΡ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠ° ΡΡΠΎΠΌ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π²ΠΎΠΏΡΠΎΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΈ Π΄Π°Π»ΡΡΠ΅ ΠΈΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΊ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΡΠΎΠΉΠ΄Π΅Π½Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΈ ΡΠ°ΠΉΠ» Ρ ΡΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
ΠΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠΊΡΠΈΠΏΡΠ° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ.
ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ°, Π° Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ²Π΅ΡΡΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π΄ΠΎ Π²ΡΠ²ΠΎΠ΄Π° Π΅Π³ΠΎ Π² ΠΎΠΊΠ½Π΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ°.
ΠΠ»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄
ΠΠ΄Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΊΠΎΠ΄ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΊΡΠΈΠΏΡΠ°, Π½ΠΎ ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ½ΠΊΡΠΈΡ readfile(), ΡΡΠΎ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ php ΡΠΎΡΠ½ΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ° Π²ΡΡΠΊΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ, ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡΠΈΡΠ΅Π½ΠΈΠ΅ Π±ΡΡΠ΅ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ob_clean().
ΠΠ΄Π½Π°ΠΊΠΎ, Ρ Π½Π΅ Ρ ΠΎΡΡ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΡΠ°ΡΡΠΈ Ρ ΡΠΆΠ΅, ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ Π½Π΅Π³ΠΎ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΠΎΠ²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ ΠΏΡΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. Π ΡΠ»ΡΡΠ°Π΅ ΠΆΠ΅ Π²ΡΠΎΡΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°, ΡΠΎ ΡΠ»ΠΎΠ² ΡΠ°ΠΌΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² php β ΡΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΎΡΠ½ΠΎ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ»ΠΈ ΠΡ Π½Π°Π΄ΡΠΌΠ°Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ°Π·Π½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ², ΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠΈ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ , Ρ.Π½. MIME-ΡΠΈΠΏΡ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°Π½Π°Π»ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π° Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, ΡΠΎΠ³Π΄Π° ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠ²:
Π‘ΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°
ΠΠ΅Π½Ρ ΡΠΆΠ΅ Π΄Π°Π²Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π» Π²ΠΎΠΏΡΠΎΡ, ΠΊΠ°ΠΊ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΊΠ»ΠΈΠΊΠ΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π²ΠΈΠ΄Π°: http://servicefile/files/d58y1e ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ°ΠΉΠ» ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ test.zip. ΠΠΎ ΡΠ°ΠΊΠΎΠΌΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ°ΠΉΠ»ΠΎΠΎΠ±ΠΌΠ΅Π½Π½ΠΈΠΊΠΈ. ΠΠΊΠ°Π·Π°Π»ΠΎΡΡ Π²ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ. Π‘Π΅ΠΉΡΠ°Ρ Ρ ΡΠ΄Π΅Π»Π°Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅.
ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ web ΡΠ°ΠΉΡΠΎΠ², Ρ Π²Π΅Π±ΠΌΠ°ΡΡΠ΅ΡΠΎΠ² Π±ΡΠ»ΠΈ Π²Π΅ΡΡΠΌΠ° ΡΠΈΠ»ΡΠ½ΠΎ ΡΠ²ΡΠ·Π°Π½Ρ ΡΡΠΊΠΈ, Π½Π΅ Π±ΡΠ»ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΈΠ΄Π΅ΠΉ. ΠΠ° ΠΈ ΡΠ°ΠΉΡΡ ΠΊΡΠΎΠΌΠ΅ Π½Π°Π±ΠΎΡΠ° ΡΠ΅ΠΊΡΡΠ° ΠΈ ΠΏΠ°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Ρ Π±Π°Π½Π½Π΅ΡΠ°ΠΌΠΈ, Π±ΠΎΠ»ΡΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ· ΡΠ΅Π±Ρ Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΈ. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ. Π ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π² ΡΠ΅ΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΉΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π½ΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π² ΡΠ΅ΡΠΈ ΡΠ°ΠΉΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ. ΠΠΎ Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°ΠΊΠΈΡ ΡΠ·ΡΠΊΠΎΠ² Π΄Π»Ρ Π²Π΅Π± ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ PHP, ASP.NET ΠΈ Π΄ΡΡΠ³ΠΈΡ , ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ Π² Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ»ΠΎΠ²Π½ΠΎ βΠΎΠ±ΠΎΠ³Π°ΡΠΈΠ»ΡΡβ. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅Π± ΡΠ°ΠΉΡΠΎΠ². Π Π°Π½ΡΡΠ΅ Π²ΡΠ΅ Π² Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π»ΠΎΡΡ HTML Π² ΡΠ²ΡΠ·ΠΊΠ΅ Ρ JavaScript ΠΈ ΡΠ΅Π΄ΠΊΠΎ Ρ VBScript. ΠΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ, ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ°ΠΉΠ»ΠΎΠΎΠ±ΠΌΠ΅Π½Π½ΠΈΠΊΠΈ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΠΎΡΡΠ°Π»Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Π²Π΅Π± ΡΠ΅ΡΡΡΡΡ. ΠΠ΅Ρ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΠ½ΠΈ ΠΈ ΡΠ°Π½ΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ, Π½ΠΎ ΡΡΠΎ Π±ΡΠ»ΠΈ Π½Π΅ ΡΠ΅ ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ ΠΈ ΠΏΠΎΡΡΠ°Π»Ρ. Π Π²ΠΎΡ Ρ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Π·Π°Π΄Π°ΡΠ°, Π° ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π²ΡΠ΄Π°ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π½Π΅ Π²ΡΠ΄Π°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ Π΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΠ°ΠΉΠ», ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° Π²ΡΡΠ΅, ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π½Π° servicefile/www/files/ ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΈΠΌΡ test.zip. ΠΠ°ΠΊ ΠΆΠ΅ ΡΠ°ΠΊ? ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° ΡΠΏΡΠΎΡΠΈΡΠ΅ Π²Ρ, Π° Π²ΡΠ΅ Π³Π΅Π½ΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ. ΠΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΎΡΠ΅Π½Ρ ΠΈ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ mod_rewrite ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Apache, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΅ΡΠ΅ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° Apache htaccess. ΠΠΎΡ ΡΡΠΎ Π²ΡΠ΅ ΡΡΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. Π‘ΡΡΠ»ΠΊΠ° Π²ΠΈΠ΄Π°: http://servicefile/files/d58y1e ΡΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠ΅ΠΉ mod_rewrite. ΠΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π°ΠΌ Π²ΡΠ΄Π°ΡΠ° Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΠ°ΠΉΠ»Π° test.zip, Π΅ΡΠ»ΠΈ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄ ΡΡΡΠ»ΠΊΡ Π½Π΅Π²ΡΠ°Π·ΡΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°. ΠΠΎΡ ΡΡΠΎ ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ.
ΠΡ ΡΠ»ΠΎΠ² ΠΊ Π΄Π΅Π»Ρ
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ΅Π»Π΅ΠΉ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ, ΠΌΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠΌΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ. ΠΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅ΠΌ Π½Π° PHP. Π― Π½Π΅ Π±ΡΠ΄Ρ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΠ± ΡΡΠΎΠΌ ΠΈ Π±Π΅Π· ΠΌΠΎΠ΅Π³ΠΎ ΡΡΠ°ΡΡΠΈΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ. Π ΠΏΡΠΈΠ²Π΅Π΄Ρ Π»ΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $_FILES, ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ. ΠΠΎΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ Ρ Π½Π΅Π΅ Π΅ΡΡΡ:
$_FILES[βfileβ][βnameβ] | ΠΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° |
$_FILES[βfileβ][βtypeβ] | Mime-ΡΠΈΠΏ ΡΠ°ΠΉΠ»Π° |
$_FILES[βfileβ][βsizeβ] | Π Π°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° Π² Π±Π°ΠΉΡΠ°Ρ |
$_FILES[βfileβ][βtmp_nameβ] | ΠΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. |
$_FILES[βfileβ][βerrorβ] | ΠΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ |
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΠΎΡΠΈΠ±ΠΎΠΊ
0 | UPLOAD_ERR_OK | ΠΡΠΈΠ±ΠΊΠΈ Π½Π΅Ρ |
1 | UPLOAD_ERR_INI_SIZE | Π Π°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π΄Π°Π½ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ upload_max_filesize ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° php.ini. |
2 | UPLOAD_ERR_FORM_SIZE | Π Π°Π·ΠΌΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΏΡΠ΅Π²ΡΡΠΈΠ» Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ MAX_FILE_SIZE, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² HTML-ΡΠΎΡΠΌΠ΅. |
3 | UPLOAD_ERR_PARTIAL | ΠΠ°Π³ΡΡΠΆΠ°Π΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» Π±ΡΠ» ΠΏΠΎΠ»ΡΡΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΈΡΠ½ΠΎ. |
4 | UPLOAD_ERR_NO_FILE | Π€Π°ΠΉΠ» Π½Π΅ Π±ΡΠ» Π·Π°Π³ΡΡΠΆΠ΅Π½. |
ΠΠ°ΠΌ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠ°ΠΉΠ»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· ΠΏΠΎΠ»Π΅ΠΉ:
ΠΠ°Π»Π΅Π΅ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° Apache htaccess. Π‘ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ΠΌ:
#ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° RewriteEngine. ΠΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΠ»ΠΈ Π²ΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ.
RewriteEngine On
#ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° RewriteBase. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π±Π°Π·ΠΎΠ²ΡΠΉ URL Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
RewriteBase /# Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° RewriteRule ^files/(.*)$ load.php?hash=$1 [L]
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ http://servicefile/files/d58y1e Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅, Π±ΡΠ°ΡΠ·Π΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ°ΠΉΠ» test.zip.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΡΠΎ Ρ Π±ΡΠ» Π·Π°ΠΌΠ΅ΡΠΈΠ», ΡΠ°ΠΊ ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΡΠ΄Π°ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ *.exe ΡΠ°ΠΉΠ»Π°, ΡΠΎ ΠΎΠ½ ΠΎΡΠ½ΠΎΡΠΈΡΡΡΡ ΠΊ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌΡ (Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌΡ ΡΠΈΠΏΡ ΡΠ°ΠΉΠ»ΠΎΠ²) ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ media-ΡΠΈΠΏ β application/octet-stream. ΠΠΎΡΡΠΎΠΌΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΡ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ *.html (ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ ΠΎΡΠ΄Π°ΡΡ ΡΠ°ΠΉΠ»Ρ *.exe ΡΠ°ΠΉΠ»Ρ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΈ *.html). ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΈ Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ, Π½Ρ Π»ΡΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ windows (*.exe) ΡΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ media-ΡΠΈΠΏΠ° β application/zip. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊ. ΠΠ»Π°ΡΡ cURL ΠΏΡΠΈΠ»Π°Π³Π°Π΅ΡΡΡ.
PHP class Π΄Π»Ρ ΡΠΊΠ°ΡΠΊΠΈ ΠΈ Π·Π°ΠΊΠ°ΡΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° ΡΠ΅ΡΠ²Π΅Ρ
ΠΡΠ΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ. ΠΠΎ Π½ΠΈΠ³Π΄Π΅ Π½Π΅Ρ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ»ΠΎ Π±Ρ Π±ΠΎΠ»Π΅Π΅ Π»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎ.
Π Π»ΠΈΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΌ ΡΡΠ°ΡΡΡΠΌ, ΠΊΡΡΠΎΡΠΊΠ°ΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΡΠΎΡΡΠΌΠΎΠ² ΠΈ Π²ΡΡΠΊΠΈΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ ΡΠ΄Π°Π»ΠΎΡΡ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΠ°Π·Π» Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ. Π― Π½Π΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π°Ρ ΡΡΠΎ ΠΌΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎ, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ»ΡΡΠ°ΡΡ , Ρ ΠΎΡΡ ΡΡΠΎ Π²Π°ΠΌ ΡΠ΅ΡΠ°ΡΡ.
ΠΡΠ»ΠΈ Ρ ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡΠ»ΡΡΡΠΈΡΡ ΠΌΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ° ΠΈ Ρ Π²Π°ΡΠ°Π΅Ρ Π·Π½Π°Π½ΠΈΠΉ Π² ΡΡΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ, ΡΠΎ Ρ Π±ΡΠ΄Ρ ΡΠ°Π΄, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΊ ΠΊΠΎΠ΄Ρ ΠΊΠΎΡΠΎΡΡΠΉ Π»Π΅ΠΆΠΈΡ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ΅ Π½Π° GitHub.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΊ Π΄Π΅Π»Ρ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° CargaDes:
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ»Π°ΡΡ CargaDes:
1. ΠΡΠ΄Π°ΡΠ° ΡΠ°ΠΉΠ»Π° ΡΠ΅ΡΠ΅Π· Π±ΡΠ°ΡΠ·Π΅Ρ Π±Π΅Π· ΠΏΠΎΠΊΠ°Π·Π° Π΅Π³ΠΎ ΠΌΠ΅ΡΡΠ° Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π΄ΠΎΠΊΠ°ΡΠΊΠΈ ΠΈ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆ Π½Π° Drupal ΠΈ ΠΈΠΆΠ΅ Ρ Π½ΠΈΠΌ:
Π― Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π΅ΡΠ΅ ΠΎΡΠ΄Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Apache, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° XSendFile On
Π‘ΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° Π±ΡΠ°ΡΠ·Π΅Ρ Π²ΡΠ΄Π°ΡΡ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°
2. ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΡΠ°ΠΉΠ»Π°/ΠΎΠ² Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΡΠ΅ΡΠ΅Π· Π±ΡΠ°ΡΠ·Π΅Ρ Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ°
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
3. Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° Π½Π° ΡΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ
4. ΠΡΠ΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΡΠΎ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°
ΠΠΎ ΠΈΡΠΎΠ³Ρ Ρ ΠΎΡΡ ΡΠΊΠ°Π·Π°ΡΡ
ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΊΠ»Π°ΡΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ Ρ Π±ΡΠ΄Ρ ΠΎΡΠ΅Π½Ρ ΡΠ°Π΄ ΡΡΠΎΠΌΡ. ΠΠ°ΠΊ Ρ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ» Π² Π½Π°ΡΠ°Π»Π΅ Π±ΡΠ΄Ρ ΡΠ°Π΄ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΊΡΠΈΡΠΈΠΊΠ΅ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°. Π‘ΡΡΠ»ΠΊΠ° Π½Π° CargaDes.class.
ΠΠ·ΠΌΠ΅Π½ΠΈΠ» Π² ΡΡΠ°ΡΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°. Π Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ Π² ΠΊΠ»Π°ΡΡΠ΅.
ΠΠΎΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ» ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊ Π½Π°Π·Π²Π°ΡΡ.
Π§ΡΠΎ Π±ΡΠ»ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°Π½ΠΎ:
Π ΡΠ΅Π»ΠΎΠΌ Ρ ΠΏΠΎΡΡΠ°ΡΠ°Π»ΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ, ΡΠΎ ΠΎ ΡΠ΅ΠΌ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ , Π΅ΡΠ»ΠΈ Π±ΡΠ΄ΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ Π΅ΡΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ Π»ΠΈΠ±ΠΎ Π½Π΅Π΄ΠΎΡΠ΅ΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ β ΠΏΠΈΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ²Π½ΡΡ ΠΊΡΠΈΡΠΈΠΊΡ webdevium ΠΈ alutskevich, Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΠΎΠ³, ΡΠΎ ΠΏΠ»ΡΡΠ°Π½ΡΠ» Π±Ρ Π²Π°ΠΌ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.
Π’Π°ΠΊ ΠΆΠ΅ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Ρ.ΠΊ. Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΅ΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΡΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΠ°ΡΡ ΠΈΠ΄Π΅ΠΉ.
Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² php
ΠΠΈΠΆΠ΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° php, Π½ΠΎ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΠ΄Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΊΠ°ΠΊ ΡΠΊΡΠΈΠΏΡ Π΅Ρ ΡΡΡΡΠ°Π½ΡΠ΅Ρ.
ΠΡΠ»ΠΈ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π²Π°ΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΌ, ΡΠΎΠ²Π΅ΡΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ Π½Π° ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠΊΡΠΈΠΏΡ cΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° php.
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π½Π΅ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ mp3-ΡΠ°ΠΉΠ»ΠΎΠ². Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ: Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΡΠΈΠΏΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΠΈΡΠ»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠΉ.
ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΡΠ½ΡΠ΅ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΉΠ»Ρ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠΊΠΎΡΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΎΠ΄Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: Internet Explorer Π½Π΅ ΡΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ, ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΊΡΡΡΡ, Π° Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠ΅Π΄ΠΈΠ°-ΠΏΠ»Π΅Π΅Ρ.
Π’Π° ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ². ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ°ΠΉΠ»Ρ pdf, doc ΠΈΠ»ΠΈ gif ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ PHP-ΡΠΊΡΠΈΠΏΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ².
PHP ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²:
ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΌΠΎΠ³ΡΡ Π²ΡΠ±ΡΠ°ΡΡ, ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΎΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ Π΅Π³ΠΎ. ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» dl_save.php, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π² Π½Π΅Π³ΠΎ Π½ΡΠΆΠ½ΡΠΉ ΠΊΠΎΠ΄. Π‘ΡΡΠ»ΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π²Π΅Π΄Π΅Ρ Π½Π° ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°, Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π‘ΡΡΠ»ΠΊΡ Π½Π° ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° ΠΎΡΠΎΡΠΌΠ»ΡΡΡ Π½ΡΠΆΠ½ΠΎ (ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ) ΡΠ°ΠΊ:
Π‘ΠΊΠ°ΡΠ°ΡΡ ΡΠ°ΠΉΠ» Ρ URL, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ PHP
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»Π° Ρ URL-Π°Π΄ΡΠ΅ΡΠ°, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ Π½ΠΈΠΆΠ΅:
Π‘ΠΏΠΎΡΠΎΠ± 1: ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ file_get_contents () : ΡΡΠ½ΠΊΡΠΈΡ file_get_contents () ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Π² ΡΡΡΠΎΠΊΡ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ, ΠΈ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π΄Π΅Π»Π°Ρ Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° 1:
// ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ URL ΡΠ°ΠΉΠ»Π° Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
// ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ basename () Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
// ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ file_get_contents () Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°
// ΠΈΠ· url ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ file_put_contents () Π΄Π»Ρ
// ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ
echo «File downloaded successfully» ;
echo «File downloading failed.» ;
ΠΡΡ
ΠΎΠ΄:
ΠΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΠ΅ΡΠΎΠ΄ 2: ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ PHP Curl: cURL ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ Β«ΠΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ URLΒ», ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ Ρ URL, ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΌ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΡΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ Π΄Π΅Π»ΠΎ Ρ URL. ΠΡΠΎ ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ ΠΊΠ°ΠΊ Β«ΡΠΌ. URLΒ». Π ΠΏΡΠΎΠ΅ΠΊΡΠ΅ cURL Π΅ΡΡΡ Π΄Π²Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠ° libcurl ΠΈ curl.
Π¨Π°Π³ΠΈ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»Π°:
ΠΡΠΈΠΌΠ΅Ρ:
// ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ URL ΡΠ°ΠΉΠ»Π° Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
// ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠ΅ΡΡΠΈΡ cURL
// ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, Π³Π΄Π΅
// ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½
// ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ basename () Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°
// Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°
// Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ» Π² ΠΏΠ°ΠΏΠΊΡ
// ΠΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠΈΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ cURL
// ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ΅Π°Π½Ρ cURL
// ΠΠ°ΠΊΡΡΠ²Π°Π΅Ρ ΡΠ΅Π°Π½Ρ cURL ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π²ΡΠ΅ ΡΠ΅ΡΡΡΡΡ
ΠΡΡ
ΠΎΠ΄:
ΠΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ: