
рд╕рд╛рдЗрдЯ рдХреА рд╡рд╛рдкрд╕реА рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ - рдпрд╣ рдирдЧреАрдирдХреНрд╕ рдФрд░ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдЯреИрдЯрд┐рдХреНрд╕ рд╣реИ, рдФрд░ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдореБрд╢реНрдХрд┐рд▓ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рднреА рдкреБрд╕реНрддрдХреЛрдВ рдореЗрдВ рдЬреЛ рдпрд╣ рд╕рд▓рд╛рд╣ рджреЗрддреА рд╣реИрдВ рдХрд┐ рдЖрдк рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рднрд╛рд░ рдХреИрд╕реЗ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рд▓рдЧрд╛рддрд╛рд░ рджреЛ рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рд╖рдпреЛрдВ - "рд╕реАрдПрд╕рдПрд╕ / рдЬреЗрдПрд╕ рдЧреНрд▓реВрдЗрдВрдЧ" рдФрд░ "рдХрдВрдкреНрд░реЗрд╢рди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛" рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╕рд╛рде рдЪрд┐рдкрдХрд╛рдиреЗрд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреГрд╖реНрда рдкрд░ 3 рд╕реАрдПрд╕рдПрд╕ рдлрд╛рдЗрд▓реЗрдВ рдФрд░ 5 рдЬреЗрдПрд╕ рд╣реИрдВ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп 8 рдХрдиреЗрдХреНрд╢рди рдмрдирд╛рдиреЗ рдФрд░ рдЙрдирд╕реЗ рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдХрдИ рдмрдбрд╝реА рдлрд╛рдЗрд▓реЗрдВ рдХрдИ рдЫреЛрдЯреЗ рд▓реЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рд╣реИрдВред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреНрд░рддреНрдпреЗрдХ рдХрдиреЗрдХреНрд╢рди рд╕реЗрдЯрдЕрдк рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрд┐рддрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдХреНрд╕рд░ рдмрдбрд╝реЗ - рдбрд╛рдЙрдирд▓реЛрдб рд╕рдордп рдХреЗ 40% рддрдХред
рдореИрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рд▓рд┐рдЦрдиреЗ рдХреЗ рдорд╛рдирдХ рддрд░реАрдХреЛрдВ рдХреА рддрд░рд╣ рдирд╣реАрдВ рдерд╛, рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдЬрд╛рдХрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдореЗрдВ, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдЧреЛрдВрдж рдХрд░ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкреЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╡рд╣ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЧрд▓рдд рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрдо рд╕реЗ рдХрдо рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдпрд╛ рддреЛ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдпрд╛ рдЙрддреНрдкрд╛рджрди рдореЗрдВ (рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд░рд┐рдпрд╛рдПрдВ)ред
рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, "рдХрднреА рдирд╣реАрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдЬреЛ рдЖрдк рдмрд╕ рдХрд╛рдЯ рдФрд░ рдкреЗрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ";)
рджрдмрд╛рд╡"рдкрдВрдк" рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдЬрд┐рддрдиреА рдХрдо рд╣реЛрддреА рд╣реИ, рдЙрддрдирд╛ рд╣реА рдХрдо рд╕рдордп рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдкрд░ рдЦрд░реНрдЪ рд╣реЛрддрд╛ рд╣реИред рднрд▓реЗ рд╣реА рдпреЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕рдВрдкреАрдбрд╝рд┐рдд рд╣реЛрдВ рдФрд░ рд╣рдо рдХреБрдЫ рд╕рдордп рдЕрдирдкреИрдХрд┐рдВрдЧ рдореЗрдВ рдмрд┐рддрд╛рддреЗ рд╣реИрдВ - рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдЖрдзреБрдирд┐рдХ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рд╢рдХреНрддрд┐ рдХреЗ рд╕рд╛рде, рдЗрд╕ рдмрд╛рд░ рдХреА рд▓рд╛рдЧрдд рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред
рдЕрдзрд┐рдХрд╛рдВрд╢ рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдбрд┐рдлреНрд▓реЗрдЯ рд╕рдВрдкреАрдбрд╝рди рд╡рд┐рдзрд┐ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдХрднреА-рдХрднреА рдорд╛рдирдХ * рдирд┐рдХреНрд╕ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рдирд╛рдо рд╕реЗ gzip рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИред
рд╡реЗрдм рдкрд░ рдХреНрдпрд╛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреЛрдИ рднреА рдкрд╛рда рдЕрдиреБрд░реЛрдз, рдЬреИрд╕реЗ: JS / CSS / JSON / HTMLред
рдЕрдкрд╛рдЪреЗ рдореЙрдб-рдбрд┐рдлреНрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрджреНрднреБрдд рдореЙрдбреНрдпреВрд▓ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реАрдзреЗ .htaccess рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░рдирд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ, рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕! - рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдорд╛рдирдХ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рд╕реЗрд╡рд╛рдУрдВ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд╣реИ рдХрд┐ рд╡реЗ (рд╣реЛрд╕реНрдЯрд░реНрд╕) рдЕрдкрдиреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХреЗ рд▓рд┐рдП рдбрд░рддреЗ рд╣реИрдВред
рдмреЗрд╢рдХ, рдЗрд╕рдореЗрдВ рдПрдХ рдЙрдЪрд┐рдд рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ - рдпрд╣ рдореЙрдбреНрдпреВрд▓ "рдордХреНрдЦреА рдкрд░" рд╕рдм рдХреБрдЫ рд╣рд┐рд▓рд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд░ рдЖрдк рдХреБрдЫ рддрд░рдХреАрдмреЗрдВ рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╣рд░ рдмрд╛рд░ рдПрдХ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреГрд╖реНрда рд▓реЛрдб рдХрд░рдиреЗ рдкрд░, рд╡рд╣ рдХрд░реЗрдЧрд╛
рд╕рднреА рд╕реАрдПрд╕рдПрд╕ / рдЬреЗрдПрд╕, рдЖрджрд┐ рдХреЛ рдкреБрдирдГ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ VDS рд╣реИ рдФрд░ рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдорд╛рд▓рд┐рдХ рд╣реИрдВ, рддреЛ рдореЙрдб-рдбреАрдлрд╝реНрд▓реИрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдбрд┐рдмрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВред
рдФрд░ рд╣рдо рд╕рд╛рдорд╛рдиреНрдп рдмрдВрдзрдХреЛрдВ рдкрд░ рд▓реМрдЯреЗрдВрдЧреЗ - рдХреНрдпрд╛ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рд╣реИ? рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдЦрд╛рдП рдЧрдП рд╣реИрдВ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╣рдореЗрд╢рд╛ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ - рдпрд╣рд╛рдВ рдПрдХ рд░рд╛рд╕реНрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХрд╛рд░реНрдп рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд┐рдЫрд▓реЗ рдПрдХ рдкрд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ - рдЕрдм рдореИрдВ рд╕рдордЭрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреНрдпреЛрдВред
рдЕрдзрд┐рдХрд╛рдВрд╢ JS / CSS рдФрд░ рдЕрдиреНрдп рдкрд╛рда рд╕реНрдерд┐рд░ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд рд╡реЗ рд╕рд╛рдЗрдЯ рдХреЗ рдХрд╛рдордХрд╛рдЬ рдХреЗ рджреМрд░рд╛рди рдирд╣реАрдВ рдмрджрд▓рддреЗ рд╣реИрдВ - рдпрд╣ "рдЧреНрд▓реВрдЗрдВрдЧ" + рддреБрд░рдВрдд рд╕рдВрдкреАрдбрд╝рд┐рдд рдкрд░ рдХреНрд▓реЙрдЬ рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рд╣рдо рдкреНрд░рд╛рдкреНрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреИрд╢ рдореЗрдВ рдбрд╛рд▓реЗрдВрдЧреЗ, рдЬрд╣рд╛рдВ рд╕реЗ рд╣рдорд╛рд░реА рдЕрдкрд╛рдЪреЗ рд▓реЗ рдЬрд╛рдПрдЧреА рдФрд░ рдЙрдиреНрд╣реЗрдВ рджреЗ рджреЗрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдореЙрдб-рд░реАрд░рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛ :
- рдПрдХ рд╡рд┐рд╢реЗрд╖ рдпреВрдЖрд░рдПрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдиреБрд░реЛрдз
- рдпрджрд┐ рдЧреНрд░рд╛рд╣рдХ рд╕рдВрдкреАрдбрд╝рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рд╕рдВрдкреАрдбрд╝рд┐рдд рдлрд╝рд╛рдЗрд▓ рд╣рдорд╛рд░реЗ рдХреИрд╢ рдореЗрдВ рд╣реИ - рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдкреВрд░рд╛ рдХрд░рддреЗ рд╣реИрдВ
- рдЕрдЧрд░ рд╕рдВрдкреАрдбрд╝рди рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИ - рдЗрд╕реЗ рд╡рд╛рдкрд╕ рджреЗрдВ рдФрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ
- рдЕрдиреНрдпрдерд╛, рд╣рдорд╛рд░реЗ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдЪрд▓рд╛рдПрдВ
рдЗрд╕ рдмрд╛рдд рдкрд░ рд╕рд╣рдорддрд┐ рд╡реНрдпрдХреНрдд рдХрд░реЗрдВ рдХрд┐ рдлреЙрд░реНрдо "/ рдЧреЛрдВрдж / ...." рдХреЗ URL рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░ рд╣рдорд╛рд░рд╛ рдореЙрдбрд▓ рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдФрд░ рдлрд╛рдЗрд▓реЗрдВ "/ рд╕реНрдерд┐рд░ / рдЧреЛрдВрдж / ..." рдореЗрдВ рд╣реЛрдВрдЧреАредрдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдПрдХ рдФрд░ рдЦрд░рдЧреЛрд╢ рдХреЛ рдорд╛рд░рддреЗ рд╣реИрдВ - рдлрд╛рдЗрд▓реЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ PHP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджреА рдЬрд╛рдПрдВрдЧреА - рдЧрдарди рдХреЗ рджреМрд░рд╛рди, рдФрд░ рдлрд┐рд░ рд╕рдм рдХреБрдЫ рдмрдбрд╝реЗ рд▓реЛрдЧреЛрдВ рдХреА рддрд░рд╣ рд╣реЛрдЧрд╛ :) рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реНрдЯреЗрдЯрд┐рдХреНрд╕ рджреЗрдЧрд╛ред
рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЖрдк рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ URL рд╕реЗ рдореЗрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдореЙрдб-рд░реАрд░рд╛рдЗрдЯ рдХреЙрдиреНрдлрд┐рдЧ рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрддрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ :)
рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рд╛рдордЧреНрд░реА рд╡рд╛рд▓реА .htaccess рдлрд╝рд╛рдЗрд▓ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдХреЗ рдореВрд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рд╣рддреА рд╣реИ:
RewriteEngine On
RewriteBase /
RewriteRule ^.*$ index.php [QSA,L]
рдЦреИрд░, рдпрд╛ рддреЛ рд╕рдорд╛рдиред рдореБрдЦреНрдп рд╢рд░реНрдд рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдореЙрдб-рд░реАрд░рд╛рдЗрдЯ рдиреЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ URL рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдпрд╣ рдирд╣реАрдВ рдкрд╛рдпрд╛, рддреЛ рдпрд╣ рдЕрдВрддрддрдГ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, index.php
рд╣рдорд╛рд░реЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, .htaccess рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдЦреЗрдВ:
рд╕рдВрдкреАрдбрд╝рд┐рдд .gz рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рд╕рд╛рде рд╣реА .jz.gz рдФрд░ .css.gz рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВ
AddEncoding gzip .gz
< FilesMatch " \. js.gz$" >
#
Header set Cache-control: private
Header append Vary User-Agent
ForceType "text/javascript"
Header set Content-Encoding: gzip
AddCharset windows- 1251 .js.gz
</ FilesMatch >
< FilesMatch " \. css.gz$" >
#
Header set Cache-control: private
Header append Vary User-Agent
ForceType "text/css"
Header set Content-Encoding: gzip
</ FilesMatch >
рд╣рдорд╛рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рдпрдо рдЬреЛрдбрд╝реЗрдВ (рдПрдХ рднреМрддрд┐рдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ URL рдХреЛ рдЫреЛрдбрд╝ рдХрд░)
RewriteCond %{ENV:REDIRECT_GZ} = 1
RewriteCond %{REQUEST_URI} ^/glue/(.+)$
RewriteCond %{DOCUMENT_ROOT}/static/glue/%1 -f
RewriteRule . - [L]
рд╕рдВрдкреАрдбрд╝рди рдХреЗ рд▓рд┐рдП рдЧреНрд░рд╛рд╣рдХ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдЬреЛрдбрд╝реЗрдВ
RewriteCond %{REQUEST_URI} ^/glue/(.+)$
RewriteCond %{DOCUMENT_ROOT}/static/glue/%1.gz -f
RewriteCond %{HTTP:Accept-Encoding} ^.*?gzip.*$ [NC]
RewriteCond %{HTTP_USER_AGENT} !^konqueror [NC]
RewriteRule ^siteglue/(.*)$ /static/glue/$1.gz [L,E=GZ: 1 ]
рдпрджрд┐ рд╕рдВрдкреАрдбрд╝рди рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ
RewriteCond %{REQUEST_URI} ^/glue/(.+)$
RewriteCond %{DOCUMENT_ROOT}/static/glue/%1 -f
RewriteRule . static/glue/%1 [L,E=GZ: 1 ]
рдЕрдм рдЕрдкрдиреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЬрд╛рджреВ - рдЗрди рдмрд╣реБрдд рд╣реА рдлрд╛рдЗрд▓реЛрдВ рдХреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреАрдврд╝реА рдХреЛ рд▓реЗрддреЗ рд╣реИрдВред
рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рдЪрд╛рд▓ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ - рдПрдХ рдФрд░ рд╕рдореНрдореЗрд▓рди -
html рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдпрд╛ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рд▓рд┐рдЦреЗрдВрдЧреЗ:
"-Glue/1.css-2.css-3-4-5.css" , рдЬрд╣рд╛рдВ "-" рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди "/" рд╣реИ, рдФрд░ "-" рдлрд╝рд╛рдЗрд▓ рд╡рд┐рднрд╛рдЬрдХ рд╣реИредрдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд╛рдо рдореЗрдВ рдХреЗрд╡рд▓ рдЕрдВрдЧреНрд░реЗрдЬреА рдЕрдХреНрд╖рд░, рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдкреНрд░рддреАрдХ "_" рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдореЗрд░реЗ рд▓рд┐рдП - рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред
рдмреЗрд╢рдХ, рдпреЗ рдХрдиреНрд╡реЗрдВрд╢рди рд╣реИрдВ рдФрд░ рдЖрдк рдЕрдкрдиреЗ рд▓рд┐рдП рдЕрдиреНрдп рдирд┐рдпрдо рдФрд░ рдЕрдиреНрдп рдкрд░рд┐рд╕реАрдорди рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк "," рдпрд╛ рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВрдиреЗ "-" рдХреЛ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдЪреБрдирд╛ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдФрд░ рд╕рд╛рдорд╛рдиреНрдп URL рдХреИрд░реЗрдХреНрдЯрд░ рд╣реИ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдЖрдкрдХреЗ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рд╕рдореНтАНрдкрд░реНрдХ рдкрд░ рдЯреЗрдврд╝реА-рдореЗрдврд╝реА рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдХрд╛рдЯрдиреЗ рдЬреИрд╕реА рдХреЛрдИ рдмреЗрд╡рдХреВрдлреА рднрд░реА рд╕рдорд╕реНтАНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
Index.php (рдпрд╛ .htaccess рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рдХреНрдпрд╛ рдЪрд▓рддрд╛ рд╣реИ?) рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рд╣рдо рдПрдХ рд╣реИрдВрдбрд▓рд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реЗ "/glue/.*" рдХреЗ рдЕрдиреБрдкрд╛рд▓рди рдХреЗ рд▓рд┐рдП URL рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░, рд╕рдВрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ,
рдЧреВрдВрдЬ рдмрдирд╛рддрд╛ рд╣реИ
(Glue :: generate ($ str)) , рдЬрд╣рд╛рдВ
$ str рд╡рд╣ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдкрд┐рдЫрд▓реА рд╕реНрд▓реИрд╢ рдХреЗ рдмрд╛рдж URL рдореЗрдВ рд╣реИ, рдЕрд░реНрдерд╛рдд "/glue/a.js" рдХреЗ рд▓рд┐рдП рдпрд╣ "a.js" рд╣реЛрдЧрд╛
рдЧреЛрдВрдж рд╡рд░реНрдЧ рд╣реА рдРрд╕рд╛ рд╣реИ
class Glue {
static $allowedExt = array (
"js" => array ( "check" => "/^js/.*?.js$/" , "delimeter" => ";n" , "mime" => тАЬtext / javascriptтАЭ ) ,
"css" => array ( "check" => "/^css/.*.css$/" , "delimeter" => "n" , "mime" => тАЬtext / cssтАЭ ) ,
) ;
static function generate ( $str ) {
if ( ! $str ) return null ; // URL
$files = array ( ) ;
preg_replace ( "/((?:[a-z0-9_.]+-)+[a-z0-9_.]+.([a-z0-9]+))(?:--|$)/ie" , " $files []=str_replace( '-', '/', " 1 ")" , $str ) ;
if ( count ( $files ) == 0 ) return null ; // URL
$srcF = тАЬ / static тАЭ ; // ,
$dstF = тАЬ / glueтАЭ ; //,
$content = "" ;
$cext = substr ( strrchr ( $files [ 0 ] , '.' ) , 1 ) ;
if ( $cext === false ) return null ; //
$fd = null ;
foreach ( self :: $allowedExt as $k => $v ) {
if ( $k == $cext ) {
$fd = $v ;
break ;
}
}
if ( ! $fd ) return null ; //
$usedNames = array ( ) ;
$fdC = & $fd [ "check" ] ;
$fdD = & $fd [ "delimeter" ] ;
foreach ( $files as $name ) {
$ext = substr ( strrchr ( $name , '.' ) , 1 ) ;
if (
$ext === false ||
in_array ( $name , $usedNames ) ||
$ext != $cext ||
! preg_match ( $fdC , $name )
) return null ; // ,
$usedNames [ ] = $name ;
$filec = file_get_contents ( " {$srcF} / {$name} " ) ;
if ( ! $filec ) return null ; //
$content .= $content != "" ? $fdD . $filec : $filec ;
}
//
file_put_contents ( " {$dstF} / {$str} " , $content ) ;
//
$gzip = gzencode ( $content , 9 ) ;; //gzdeflate( $content, 9 );
if ( $gzip ) file_put_contents ( "/ {$dstF} / {$str} .gz" , $gzip ) ;
// mime-
header ( "Content-type: " . $fd [ "mime" ] , true ) ;
return $content ;
}
}
рдлрд┐рд░, рдпрд╣ рдХреЗрд╡рд▓ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ - рдпрд╣ рдХреИрд╕реЗ рд╕реНрдерд┐рд░ рд╡рд░реНрдЧ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ - рдЖрдк рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рддрд░реАрдХреЗ рдХреЛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ - рд▓рд╛рдареА рдФрд░ рдорд╣рд┐рд▓рд╛рдУрдВ рдХреЗ рд╕рд╛рде рднрд╛рд░реА рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ;)
рдпрд╣ рд╕рдм, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ - рдлрд┐рд░ рднреА "рдореИрдиреБрдЕрд▓" рдХрд╛рдо рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рд╣реИ :( - рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд▓рд┐рдЦреЗрдВ, рд▓реЗрдХрд┐рди рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ред
рд╕рдм рдХреБрдЫ - рдкрд╣рд▓реЗ рдЕрдиреБрд░реЛрдз рдкрд░ рд╕рдм рдХреБрдЫ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдПрдХ рдФрд░ рдЫреЛрдЯрд╛ рдЬреЛрдбрд╝ - рдФрд░ PHP рдореЗрдВ рджреА рдЧрдИ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ?рдЗрд╕реЗ рднреА рдирд┐рдЪреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛!
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрд╕ рд╕реНрдерд╛рди рдкрд░ рдЬрд╣рд╛рдВ рдЖрдк рдкрд╛рда рдлреЙрд░реНрдо рдХреА рдлрд╛рдЗрд▓реЗрдВ рджреЗрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЙрддреНрдкрдиреНрди рд╕рд╛рдордЧреНрд░реА рджреА рдЧрдИ рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ ($ рд╕рд╛рдордЧреНрд░реА);рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рдХрд░реЗрдВ:
if ( isClientSupportGzip ( ) ) {
ob_start ( "ob_gzhandler" ) ;
echo ( $content ) ;
ob_end_flush ( ) ;
} else echo ( $content ) ;
рдпрд╣ рд╡рд┐рддрд░рд┐рдд рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░реЗрдЧрд╛ рдпрджрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдВрдкреАрдбрд╝рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдЗрд╕реЗ рдЪреЗрдХ рдХрд░рддрд╛ рд╣реИ рд╡рд╣ рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
function isClientSupportGzip ( ) {
if ( headers_sent ( ) || connection_aborted ( ) ) return false ;
if ( stripos ( getenv ( "HTTP_ACCEPT_ENCODING" ) , "gzip" ) === false ) return false ;
if ( stripos ( getenv ( "HTTP_USER_AGENT" ) , "konqueror" ) !== false ) return false ;
return true ;
}
рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЛрдб рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдФрд░ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ 1 рдкрд░ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреИрд╢ рдореЗрдВ рди рд▓рд┐рдЦреЗрдВ рдФрд░ рдбрд╛рдпрдиреЗрдорд┐рдХреНрд╕ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рди рдХрд░реЗрдВ - рдЖрдкрдХреЛ рд╣рд░ js рдлрд╝рд╛рдЗрд▓ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реА рдХреИрд╢ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЪрдврд╝рдиреЗ рдФрд░ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдпрд╣ рд╕рдм - рд╣рдордиреЗ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдХреЛ рдереЛрдбрд╝рд╛ рдлреИрд▓рд╛рдпрд╛) рдореЗрд░реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╡рд╛рдкрд╕реА рдХреА рдЧрддрд┐ рдореЗрдВ рд╡реГрджреНрдзрд┐ 30-40% рд╣реЛ рд╕рдХрддреА рд╣реИред
рдпрджрд┐ рдХреЛрдИ рд╕реБрдзрд╛рд░, рд╕реБрдЭрд╛рд╡ рдпрд╛ рдЖрд▓реЛрдЪрдирд╛ рд╣реИ - рддреЛ рдЖрдкрдХрд╛ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕реНрд╡рд╛рдЧрдд рд╣реИ - рдореИрдВ рдмрд╣реБрдд рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ - рдПрдХ рд╕рджреА рд╕реАрдЦреЗрдВ)рдлрд╛рд╕реНрдЯ рдЖрдк рд╕рд╛рдЗрдЯреЛрдВ, рдЕрдзрд┐рдХрддрдо рд╕рдВрдкреАрдбрд╝рди рдФрд░ рд╣рд░реНрд╖рд┐рдд рдЧреНрд░рд╛рд╣рдХреЛрдВ;)
рдкреБрдирд╢реНрдЪрдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рд▓рд╛рдпрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП jquery, рдПрдХ рд╣реА рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдкрд░, рдореИрдВ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЕрднреА рднреА рдПрдХ рд╣реЛрдЯрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦреЗрдВ, рд╡рд╣реА рдПрдХрд▓ css рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ - рдЕрд░реНрдерд╛рдд рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рджреНрд╡рд╛рд░рд╛ рддреЗрдЬреА рд╕реЗ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЬрдм рдЬреЗрдПрд╕ рдХреЛ рдЪрдордХрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЦрд╝рд╛рд╕рд┐рдпрдд рдХреЛ рдпрд╛рдж рд░рдЦреЗрдВ - ",", рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЧреЛрдВрдж рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдкрд┐рдЫрд▓реА рдкрдВрдХреНрддрд┐ рдХреЗ рдмрд╛рдж рдкрд┐рдЫрд▓реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ "рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?"
рдХреИрд╢ рдЬрдирд░реЗрд╢рди рд╣реИрдВрдбрд▓рд░ рд▓рд┐рдЦрддреЗ рд╕рдордп, рд╣реИрдХрд░реНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦреЗрдВ - рд╕рдм рдХреБрдЫ рдФрд░ рд╕рдм рдХреБрдЫ рдЬрд╛рдВрдЪреЗрдВ, рдЕрдирдкрдврд╝ рдкрд░рд┐рд░рдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдЖрдк рдПрдХ рд╕рд╛рде рдЪрд┐рдкрдХ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдЯреИрдЯрд┐рдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рд╕реА рджрд┐рд▓рдЪрд╕реНрдк рдЪреАрдЬреЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХрдо рд╕реЗ рдХрдо рдЖрдк рдореГрддреНрдпреБ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рди рдХреЛ рд░реМрдВрджрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рднреА рд╢реНрд░реА рдЙрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдорджрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ - рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗред ред
рдпрджрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рд╕рдмрд╕реЗ рдЕрд▓реЛрдХрдкреНрд░рд┐рдп рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рд╣реИ, рддреЛ рд╡рд╣ рд╕рдм рдХреБрдЫ рдЪреЙрдХрд▓реЗрдЯ рд╣реИ, рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
ForceType "Text / javascript" рдкрд░ ForceType "text / javascript"; рд╕рд╛рдордЧреНрд░реА = рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдБ -1251 ┬╗
рдФрд░ рдЬреЛрдбрд╝реЗрдВ: AddCharset windows-1251 .js рдФрд░ AddCharset windows-1251 .css
рдФрд░ рдереЛрдбрд╝реА рд╕рд▓рд╛рд╣, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдХреНрд░рдо рдХреЛ рдЬрд╛рд░реА рд░рдЦреЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ "/glue/a.js-b.js" рдФрд░ "/glue/b.js-a.js" рдПрдХ рд╣реА рдмрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЖрдкрдХреЛ рдорд┐рд▓реЗрдЧрд╛ рдХреИрд╢ рдореЗрдВ рджреЛ рдлрд╛рдЗрд▓реЗрдВ ...
рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗрдЗрдореЗрдирдо рдФрд░
рдЯреНрд░реВрдбреНрд░реИрдЧреЛ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐
рдЕрдкрд╕реНрдлреАрддрд┐ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рд╕реНрддрд░ 9 рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ 6 рд╣реИ