Gyazo рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░

рд╣рд╛рдп, рд╣реЗрдмреНрд░!
рдЫрд╡рд┐
рдореИрдВ рдФрд░ рдореЗрд░реЗ рджреЛрд╕реНрдд рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЧреНрдпрд╛рдЬрд╝реЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рдПрдХ рдЫреЛрдЯрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо, рдЬрдм рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рддреБрд░рдВрдд рд╕реНрдХреНрд░реАрди рдкрд░ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЬреИрд╕реЗ рд╣реА рдЖрдк рдорд╛рдЙрд╕ рдХреЛ рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ, рдХреНрд╖реЗрддреНрд░ рдХреЛ gyazo рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рддреБрд░рдВрдд рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдБ рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВ: http://gyazo.com

рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЗрд╕рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдиреЗ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдореБрджреНрд░реАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдФрд░ рднреБрдЧрддрд╛рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕рдореЗрдВ рдЧреИрд░-рдкреНрд░реАрдорд┐рдпрдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдШреБрд╕рдкреИрда рд╡рд┐рдЬреНрдЮрд╛рдкрди рд╢рд╛рдорд┐рд▓ рдереЗред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЫрд╡рд┐ рдХрд╛ рд╕реАрдзрд╛ рд▓рд┐рдВрдХ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХреЗ рд╕рд╛рде рдкреГрд╖реНрда рдХрд╛ рд▓рд┐рдВрдХред рдлрд┐рд░ рдкреНрд░рддреНрдпрдХреНрд╖ рдлрд╝рд╛рдЗрд▓ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рджреБрд░реНрдЧрдо рд╣реЛ рдЧрдИред

рдЪреВрдВрдХрд┐ рдЧрд╛рдЬрд╝реЛ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╡рд┐рдЬреНрдЮрд╛рдкрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдЕрдкрдиреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдХрдЯреМрддреА рдХреЗ рддрд╣рдд рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред

1. рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред


рд╣рдореЗрдВ PHP рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореВрд▓ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ CGI рд╣реИ, рдореИрдВрдиреЗ PHP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рд╣реИред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реА рдпрд╣рд╛рдБ рд╣реИ:

<?php $uri = "http://vps.yurganov.ru/gyazo/"; if(isset($_FILES['imagedata']['name'])) { $path = 'i/' . substr(md5(time()), -28) . '.png'; if(move_uploaded_file($_FILES['imagedata']['tmp_name'], $path)) { echo $uri , $path; } else{ echo $uri; } } else { echo $uri; } ?> 


рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЕрд▓реМрдХрд┐рдХ рдХреБрдЫ рднреА рдирд╣реАрдВред

рдЬрдм рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рдлрд╝рд╛рдЗрд▓ рднреЗрдЬрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕реЗ рд╡рд░реНрдг рд╕реЗрдЯ (рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ - md5 + рд╕рдордп ()) рдореЗрдВ рдмрджрд▓ рджреЗрддреА рд╣реИ, рдФрд░ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рднреА рд▓реМрдЯрд╛ рджреЗрддреА рд╣реИред

рдореИрдВрдиреЗ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдирд╣реАрдВ рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди i / рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ 777 рдЕрдзрд┐рдХрд╛рд░ рджрд┐рдП рд╣реИрдВред

2. рдЧреНрд░рд╛рд╣рдХ рднрд╛рдЧ рдХреА рддреИрдпрд╛рд░реАред


2.1 рд╡рд┐рдВрдбреЛрдЬрд╝ рдЕрдиреБрдкреНрд░рдпреЛрдЧ


рд╡рд┐рдВрдбреЛрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди C ++ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╕рдВрдХреЗрдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕ рдЫрд╡рд┐ рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ рд╕реАрдзреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ gyazowin рдХреЗ рдкреБрд▓рд░рд┐рд╢ рд╕рдВрд╕реНрдХрд░рдг, рдЬрд┐рд╕рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЖрдИрдПрдирдЖрдИ -рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓реА рдЧрдИ рд╣реИрдВред

 ; Set up gyazo on your own server using ; ruby: http://github.com/gyazo/Gyazo/tree/master/Server/ ; php : http://benalman.com/news/2009/10/gyazo-on-your-own-server/ [Configuration] SERVER = gyazo.com PATH = /upload.cgi 

рдЪреВрдБрдХрд┐ рдЙрдирдХрд╛ рдХреЛрдб рддреБрд░рдВрдд рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ред

рдЖрдк рдЗрдирдЖрдИ-рдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдпрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдЖрдкрдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

 [Configuration] SERVER = [ ] -   ip-     PATH = /upload.php -      

рдЖрдк рдореВрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рднреА рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдЯреНрд╡рд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред (gyazowin.cpp рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд╛рдЗрдиреЗрдВ SERVER рдФрд░ PATH рдвреВрдВрдвреЗрдВ рдФрд░ рдКрдкрд░ рдХреА рддрд░рд╣ рдмрджрд▓реЗрдВ)

2.2 рдореИрдХ рдУрдПрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧ


рдореИрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде, рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ - рдПрдХ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд╣рд╛рдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд╣рд╛рдВ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдкрде рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИред

рдЖрдкрдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рдореИрдХ рдХреЗ рд▓рд┐рдП рдЧрд╛рдЬрд╝реЛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдлрд┐рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдЬреЛ /Applications/Gyazo.app/Contents/Resources/ рдореЗрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
 HOST = 'your domain' CGI = '/upload.php' -     

рдлрд┐рд░ рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдХрд╛рдо рдЬрд╛рд░реА рд░рдЦреЗрдВред

2.3 рд▓рд┐рдирдХреНрд╕ - рдЖрд╡реЗрджрди


рд▓рд┐рдирдХреНрд╕ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЧрд╛рдЬрд╝реЛред

рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдкрде, рдХреНрд░рдорд╢рдГ рд░реВрдмреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рднреА рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред

рдФрд░ рдХреНрдпрд╛, рддреБрдордиреЗ рдХреБрдЫ рднреА рдЬреАрддрд╛?


рдЫрд╡рд┐ рддреБрд░рдВрдд рдХрд╛рдо рдХреА рдЧрддрд┐
рдЫрд╡рд┐ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХрд╛ рдЕрднрд╛рд╡
рдЫрд╡рд┐ рд╕рднреА рдиреЗ рдЕрдкрдиреА рдУрд░ рд╕реЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдмрдирд╛рдП
рдЫрд╡рд┐ рд╣рдореЗрдВ рд╕рд░реНрд╡рд░ рдкрд░ рдореБрдлреНрдд рдЬрдЧрд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ (рдПрдХ рд╕рд╛рд▓ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рд▓рдЧрднрдЧ 200 рдПрдордмреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛, рдЬреЛ рдЖрдорддреМрд░ рдкрд░ рдПрдХрд▓ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ)
рдЫрд╡рд┐ рдЖрдкрдХреЗ рдорд┐рддреНрд░ рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдбрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрдирдХреА рдЫрд╡рд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрдЧреА

рдЙрджрд╛рд╣рд░рдг


рдЖрдк рдореЗрд░реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдХрд╛рдо рдХреА рдЧрддрд┐ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣рд╛рдЗрдмреНрд░рд┐рдб рдХреЗ рдиреАрдЪреЗ рдирд╣реАрдВ рдЭреБрдХрддрд╛ рд╣реИ):
http://vps.yurganov.ru/gyazo/
рдиреЛрдЯ: рд╕рднреА рдмрдирд╛рдП рдЧрдП рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЛ рд╣рд░ 5 рдорд┐рдирдЯ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдХреНрд░реЙрди рджреНрд╡рд╛рд░рд╛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

PS рдлрд╝рд╛рдЗрд▓ рдЧреИрд▓рд░реА


рдПрдХ рдЧреИрд▓рд░реА рдЬреЛ рдХрд╛рд▓рд╛рдиреБрдХреНрд░рдорд┐рдХ рдХреНрд░рдо рдореЗрдВ рдЖрдкрдХреА рд╕рднреА рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рджрд┐рдЦрд╛рддреА рд╣реИ, рдпрд╣рд╛рдВ рд╕реНрдерд┐рдд рд╣реИ ред

рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ: http://vps.yurganov.ru/gyazo/distr/gallery.zip

(рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдЕрдВрджрд░ рд╕реНрдерд╛рдкрдирд╛ рдирд┐рд░реНрджреЗрд╢)

Source: https://habr.com/ru/post/In132937/


All Articles