рд╕рднреА рдХреЗ рд▓рд┐рдП рд╢реБрднрдХрд╛рдордирд╛рдПрдБ!
рдореИрдВ рдПрдХ рдЖрдо рдХреЛрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ Yii рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдФрд░ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ, рдХреЛрд╣рди рд╕реЗ yii рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛, рдореИрдВ рдЗрд╕рдХреА рд╕рд╛рджрдЧреА рдФрд░ рд╕реБрд╡рд┐рдзрд╛ рд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЦреБрд╢ рдерд╛, рдЬреЛ рдХрд┐, рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛, рдХреЛрдЦрд╛рдирд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдИ рдЧреБрдирд╛ рдЕрдзрд┐рдХ рдерд╛ (рдкреНрд░реЗрдорд┐рдпреЛрдВ рдиреЗ рдЗрд╕ рдврд╛рдВрдЪреЗ рдХреЛ рдорд╛рдл рдХрд░ рджрд┐рдпрд╛), рдФрд░ рдлрд┐рд░, рдЙрд╕рдХреЗ рд▓рд┐рдП рд╕рднреА рдЙрд╕реА рдХрд╛рдо рдХреА рдЬрд░реВрд░рдд, рдореБрдЭреЗ Yii рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдореЗрдВ рдФрд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдХрд░реНрдиреЗрд▓ рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдореЗрдВ рддрд▓реНрд▓реАрди рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдЬрд┐рд╕реЗ "рдЖрдЙрдЯ рдСрдл рдж рдмреЙрдХреНрд╕" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, Yii рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд░реНрдиреЗрд▓ рдХреЗ рд╕рд╛рде рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдФрд░ рдЙрд╕ рдкрд░ рдХрдИ рдбреЗрдореЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдХрдИ рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреНрд░рдмрдВрдзрди рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрди рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдереЛрдбрд╝рд╛ рдЖрд░рдХреНрд╖рдг
рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрдкрд╛рдЪреЗ, php, рдпрд╛ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреА рдареАрдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╕рд┐рд░реНрдл рд╡рд┐рдЪрд╛рд░ рдХреЛ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЖрдкрдХреА рд░рд╛рдп рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдкреНрд░рд┐рдп habrayuzers, рдЪрд╛рд╣реЗ рд╡рд╣ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд┐рдзрд┐ рдХреЛ рдЖрдЧреЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ рдпрд╛ рдирд╣реАрдВ рдФрд░ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдореИрдВ рддреБрд░рдВрдд рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдХреНрд░рд┐рдпрд╛рдПрдВ рдПрдХ рддрд╛рдЬрд╛ рд╕реНрдерд╛рдкрд┐рдд ubunt 11.10 рдФрд░ рдмреЙрдХреНрд╕ рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рджреАрдкрдХ рдкрд░ рд╣реЛрддреА рд╣реИрдВред
рдпрд╣ рднреА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдардХ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Yii рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИ рдФрд░ рдХрдо рд╕реЗ рдХрдо рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЗрд╕рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИред
рдЯреНрд░реЗрдирд┐рдВрдЧ
рдЗрд╕рд▓рд┐рдП, рд╢реБрд░реВ рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд▓рдЧрднрдЧ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рд╕рд░рд▓ рдореЗрдЬрдмрд╛рди рд╣реИ:
<VirtualHost *:80> ServerName demo.lori ServerAlias demo.lori www.demo.lori DocumentRoot /home/lori/workspace/demo.lori/www ErrorLog /home/lori/workspace/demo.lori/logs/error.log CustomLog /home/lori/workspace/demo.lori/logs/access.log common </VirtualHost>
ZY
.Lori рдбреЛрдореЗрди рдЬрд╝реЛрди
рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕рд╛рд░реНрдердХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ, рдпрд╣ рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рд╡рд┐рдирдореНрд░ рд╕реЗрд╡рдХ рдХрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╛рдо рд╣реИ рдЬреЛ рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╡рд┐рдХрд╛рд╕ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рд▓реЙрдЧ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреЛ рдЙрдирдХреЗ рд▓рд┐рдП рддреЗрдЬреА рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ (рдореИрдВ рдпреВрдирд┐рдХреНрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдЧреБрд░реБ рд╣реЛрдиреЗ рдХрд╛ рдирд╛рдЯрдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕рд▓рд┐рдП, рдЕрдЧрд░ рдХреЛрдИ рдореБрдЭрд╕реЗ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрд╖реЗрд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рдореИрдВ рдЦреБрд╢реА рдХреЗ рд╕рд╛рде рд╕реБрдиреВрдВрдЧрд╛)ред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ,
yii рдирд╛рдордХ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдБ, рдЬрд╣рд╛рдВ рд╣рдо Yii рдореЗрдВ рддрд╛рдЬрд╝рд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕рд╕реЗ рдлреНрд░реЗрдорд╡рд░реНрдХ рдлрд╝реЛрд▓реНрдбрд░ (рд▓реЗрдЦ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рдордп, рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдЕрдВрддрд┐рдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг 1.1.10)ред рдЕрдм рд╕реЗ, рдпрд╣ рд╣рдорд╛рд░рд╛ рдореВрд▓ рд╣реЛрдЧрд╛, рдФрд░ (рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ), рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реА рдЫреВ рдкрд╛рдПрдВрдЧреЗред
рдЙрд╕рдХреЗ рдмрд╛рдж,
/home/lori/workspace/demo.lori/www рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ,
рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд Yii рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░):
-
www /тАФтАФ
рд╕реВрдЪрдХрд╛рдВрдХред рдкреАрдПрдЪрдкреАтАФтАФ
тАФтАФ
рд╡рд┐рдиреНрдпрд╛рд╕ /тАФтАФтАФтАФтАФтАФтАФ
devel /тАФтАФтАФтАФ
<рд╡рд┐рдХрд╛рд╕ рд╕реНрдерд╛рди рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓>тАФтАФ
рд╕реНрдерд┐рд░ /тАФтАФтАФтАФ
<рдЙрддреНрдкрд╛рджрди рд╕реНрдерд╛рди рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓>-
рдЗрдВрдЬрди /тАФтАФ
<рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЗрдВ>-
рдереАрдо /тАФтАФ
рдореВрд▓ / (рдореБрдЦреНрдп рд╡рд┐рд╖рдп рдХрд╛ рд╢реАрд░реНрд╖рдХ)тАФтАФтАФтАФтАУ
рд╕реНрдерд┐рд░ /тАФтАФтАФтАФтАФтАФ
рдЪрд┐рддреНрд░ /тАФтАФтАФтАФтАФтАФтАФтАФ
рд╕реАрдПрд╕рдПрд╕ /тАФтАФтАФтАФтАФтАФтАФ-
рдЬреЗрдПрд╕ /тАФтАФтАУ
рд╡рд┐рдЪрд╛рд░ /тАФтАФтАФтАФтАФтАФ
<< рд╡рд┐рд╖рдпреЛрдВ рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдорд╛рд░реЗ рд╕рднреА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреА рдлрд╛рдЗрд▓реЗрдВ>рдЕрдм, рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдВрдЧрдарди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╕рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╛рдЗрд▓реЗрдВ (рдирд┐рдпрдВрддреНрд░рдХ, рдШрдЯрдХ, рдореЙрдбрд▓, рдЖрджрд┐)
рдЗрдВрдЬрди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рдПрдВрдЧреА,
рдереАрдо рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЧрдВрддрд╡реНрдп рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдереАрдо рдФрд░ рдЕрдиреНрдп рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА рдЬреИрд╕реЗ CSS рдпрд╛ JS рдлрд╛рдЗрд▓реЗрдВ рдпрд╣рд╛рдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рдПрдВрдЧреАред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝реЛрд▓реНрдбрд░ рднреА рдХреИрдиреЛрдирд┐рдХрд▓ рдмрдирд╛ рд╣реБрдЖ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕рдХреЗ рдЗрдВрдЯрд░реНрдирд▓ рдХреБрдЫ рд╣рдж рддрдХ рдмрджрд▓ рдЬрд╛рдПрдВрдЧреЗред
рд╕рднреА рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрдирд╛рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рд░рд╣рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╡рд╛рдИрдЖрдИрдЖрдИ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдиреЗ рд╕рд╣реА рд░реВрдк рд╕реЗ рджреЗрдЦрд╛ рд╣реИ, рд░рдирдЯрд╛рдЗрдо рдФрд░ рдПрд╕реЗрдЯреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣рд╛рдВ рдкрд╣рд▓реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрджрд▓рд╛рд╡ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред рдЗрди рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдмрд╕ рдПрдХ рдзреНрдпрд╛рди рджреЗрдВ: рд╕рднреА рдЖрдЧреЗ рдЖрджреЗрд╢реЛрдВ рдХреЛ рд╕реБрдбреЛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдпрд╣ рд╕рдВрдХреЗрдд рдирд╣реАрдВ рджреВрдВрдЧрд╛, рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рднреА рдЕрдзрд┐рдХрд╛рд░ рд╣реИрдВред
рд╣рдо рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЧреЛрджрд╛рдо рдмрдирд╛рддреЗ рд╣реИрдВ:
mkdir -p /home/projects/data/demo.lori cd /home/projects/data/demo.lori mkdir -p ./assets/stable mkdir -p ./runtime/stable mkdir -p ./upload/stable mkdir -p ./assets/devel mkdir -p ./runtime/devel mkdir -p ./upload/devel
рдЕрдм рд╣рдореЗрдВ рдЕрдкрдиреЗ рдврд╛рдВрдЪреЗ рдХреЛ рдЗрди рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдлрд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реИрдВ:
chown www-data -R /home/projects
(* рдпреВрдирд┐рдХреНрд╕ рдХреЗ рдкрд╛рд░рдЦреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╕рд╡рд╛рд▓ рднреА рд╣реИ, рдХреНрдпрд╛ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЯрд┐рдкреНрдкрдгреА рд╣реИ?)
рдЕрдм рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЬреЛ рдХреБрдЫ рднреА рд╣реИ рд╡рд╣ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрди рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдиреБрднреВрддрд┐ рдкреИрджрд╛ рдХрд░рдирд╛ рд╣реИ:
ln -s /home/projects/data/demo.lori/assets /home/lori/workspace/demo.lori/www/assets ln -s /home/projects/data/demo.lori/runtime /home/lori/workspace/demo.lori/www/runtime ln -s /home/projects/data/demo.lori/upload /home/lori/workspace/demo.lori/www/upload
UPD1 (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░): рдПрдХ рд╕рдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ
1) Yii рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдРрд╕реА рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдХрд┐рд╕реА рддрд░рд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЬреБрдбрд╝реА рд╣реЛрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рддреГрддреАрдп-рдкрдХреНрд╖ js-script, css-files, рдЪрд┐рддреНрд░ рдФрд░ рдЕрдиреНрдп рдЪреАрдЬреЗрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдореИрдВ рдЕрдкрдиреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП , рддреБрдЪреНрдЫ jQuery рдпрд╛ рд╕реАрдПрд╕рдПрд╕-рд░реАрд╕реЗрдЯ, рдЙрдиреНрд╣реЗрдВ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЕрдзрд┐рдХ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ред
2) рд░рдирдЯрд╛рдЗрдо рдХрд╛ рдмрд╣реБрдд рдорддрд▓рдм рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рднреВрдорд┐рдХрд╛ рдирд╣реАрдВ рдирд┐рднрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЦреБрдж Yii рдХреЛ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╕реНрд╡рдпрдВ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд╣рд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
3) рджреВрд░рд╕реНрде рдФрд░ рдХреЗрдВрджреНрд░реАрдХреГрдд рдЕрдкрд▓реЛрдб рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдм рдПрдХ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЗрдВ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрддреА рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдПрдХ рдЕрд╡рддрд╛рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЗрд╕реЗ рдмрдирд╛рдирд╛ рдЕрдзрд┐рдХ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рддрд╛рдХрд┐ рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХрд┐рд╕реА рдЪрд┐рддреНрд░ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЕрдиреНрдп рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреБрдЫ рд▓рд┐рдВрдХ рд╣реИ рдпрд╛ рдирд╣реАрдВред
рдЗрд╕ рдкрд░, рдмреБрдирд┐рдпрд╛рджреА рддреИрдпрд╛рд░реА рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИ, рд╣рдо рд╕реАрдзреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗрдЯрдЕрдк рдкрд░ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред
рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╕реЗрдЯрд┐рдВрдЧ
рдЖрдЗрдП index.php рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рдпрд╣ рдорд╛рдирдХ Yii рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рд╕реЗ рд▓рдЧрднрдЧ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде:
<?php date_default_timezone_set('Europe/Moscow'); error_reporting(E_ALL); ini_set('display_errors', 1);
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЦреБрдж рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
AddDefaultCharset UTF-8 RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^upload/(.*)$ /forbidden [L] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^assets/(.*)$ /forbidden [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^assets/(.*)$ /nofile [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^upload/(.*)$ /nofile [L] RewriteCond %{REQUEST_URI} !^/assets RewriteCond %{REQUEST_URI} !^/upload RewriteRule ^(.*)$ index.php [L]
рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рддреИрдпрд╛рд░ рд╣реИрдВ, рдЕрдм рдЖрдкрдХреЛ рдЙрдирдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ :)
рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рд╢реЗрдбреНрдпреВрд▓ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдФрд░ рдореИрдВ devel рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрди рдЙрд╕ рдкрд░ рд╣реЛрдВрдЧреЗ, рдФрд░ рдЙрддреНрдкрд╛рджрди рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╕рдорд╛рди рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ,
config / devel / folder рдореЗрдВ,
main.php рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБред рдпрд╣ Yii рдкрд░ рдХрд┐рд╕реА рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ
рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ
main.php рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╣рдо рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рд╕рдВрдЧрдарди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЗрд╕рдореЗрдВ рдХреБрдЫ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗ:
<? return array(
рдЙрдкрд░реЛрдХреНрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, ellipses рдХреЛрдб рдХреЗ рдорд╛рдирдХ рдмреНрд▓реЙрдХреЛрдВ рдХреА рдЬрдЧрд╣ рд▓реЗрддреЗ рд╣реИрдВ рдЬреЛ рдлрд╝рд╛рдЗрд▓ рд╕рдВрдЧрдарди рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╡рд┐рд╡рд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдпрд╣
urlManager рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ:
рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╢рд╛рд╕реНрддреНрд░реАрдп рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд░реВрдЯрд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗ рднреНрд░рдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рдПрдХ рдЕрд▓рдЧ
рдорд╛рд░реНрдЧреЛрдВ рдореЗрдВ
рд░рдЦрд╛ рд╣реИред
рдореБрдЦреНрдп рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ
рдкреАрдПрдл рдлрд╝рд╛рдЗрд▓, рдФрд░ рдЗрд╕рдореЗрдВ рдлреЙрд░реНрдо рдХреА рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрд░рдЪрдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ
<? return array( 'var1' => 'value1' );
рдЕрдВрддрднрд╛рд╖рдг
рдЗрд╕ рдкрд░, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдкреВрд░рд╛ рдмреБрдирд┐рдпрд╛рджреА рд╕реЗрдЯрдЕрдк рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд╛рдн:
- рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛
- рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЬрди, рдЬреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдпрд╛ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдкреВрд░рдХ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
- рд╡рд┐рдХрд╛рд╕ рдФрд░ рдЙрддреНрдкрд╛рджрди рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдЕрд▓рдЧрд╛рд╡ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде
- рдЧрд┐рдЯ рдЬреИрд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рд╕реБрд╡рд┐рдзрд╛
- рдХреБрдЫ рд╣рдж рддрдХ рдПрдХ рд╡рд┐рд╖рдп рд╕реВрдЪреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЕрд▓рдЧ
рд╡рд┐рдкрдХреНрд╖:
- рдЕрднреА рддрдХ рдирд╣реАрдВ рдЦреЛрдЬрд╛ рдЧрдпрд╛
рдореБрдЭреЗ рдЗрд╕рдХреА рд▓рдЪреАрд▓реЗрдкрди рдХреЗ рдХрд╛рд░рдг рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд╕рдВрдж рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ htaccess рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдХреЗ, рд╡рд┐рднрд┐рдиреНрди рд╡рд╛рддрд╛рд╡рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдХрд░, рдФрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐ рдЖрдк рд╣рд░ рдмрд╛рд░ рдХреБрдЫ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд░реНрдиреЗрд▓ рдореЗрдВ рдХреБрдЫ рдЕрдЪреНрдЫрд╛рдЗрдпрд╛рдБ, рдЖрдкрдХреЗ рд╕рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди (рдЖрдЦрд┐рд░рдХрд╛рд░, рдХрд░реНрдиреЗрд▓, рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рддрд░рд╣, рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдЬрд┐рд╕реЗ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рд▓реЛрдХреЗрд╢рди рдкрд░ рднреА рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкреНрд░реЛрдбрдХреНрд╢рди рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЯрд┐рдкреНрдкрдгреА рдпрд╛ рд╕рд╡рд╛рд▓ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреА рдФрд░ рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдХреБрдЫ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдЬрд╡рд╛рдм рджреЗрдВ рдпрд╛ рд╕рд╣реА рдХрд░реЗрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдЬрдирддрд╛ рд╕реЗ Yii рдкрд░ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреЗ рдкреВрд░реНрдг рдЪрдХреНрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рд▓реЗрдЦ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдирд╣реАрдВ рдорд┐рд▓реЗ, рдореВрд▓ рд░реВрдк рд╕реЗ рдХреИрд╢рд┐рдВрдЧ рдЬреИрд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓реЗрдЦреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИред рд╕рддреНрдпрд╛рдкрди, рдФрд░ рдореВрд▓ рдЧрд╛рдЗрдб, рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рд╡рд╛рдИрдЖрдИрдЖрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдкреВрд░реНрдг рдзрд╛рд░рдгрд╛ рднреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред
рдЕрдВрдд рддрдХ рд▓реЗрдЦ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж!
UPD: рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдлрд┐рд░ рднреА рдХрд╣рд╛ рдХрд┐ рд▓реЗрдЦреЛрдВ рдХрд╛ рдкрд╛рдареНрдпрдХреНрд░рдо рдЗрддрдирд╛ рдмреБрд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдирд╣реАрдВ рд╣реИ, рддреЛ рдореИрдВ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ: рдпрджрд┐ рдЖрдк рдУрдЯреА рдФрд░ рдЯреАрдУ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдкрд░ рдПрдХ рдЪрдХреНрд░ рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рддреБрдЪреНрдЫ рдирд╣реАрдВ рд╣реИ (рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдмреНрд▓реЙрдЧ рдпрд╛ рдкрддрд╛ рдкреБрд╕реНрддрд┐рдХрд╛ рдХреА рддрд░рд╣): рдЖрдк рджреЗрдЦрдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ ?