Php създаване на CNC

  • Създаване на NC
  • Промени в настройките в .htaccess
    • Анализ на регулярния израз в RewriteRule
  • CNC манипулатор в PHP
  • За да обобщим

Създаване на NC

И аз ще започна с това, че използването на единични реализации, като пълноправен CNC манипулатор не може да се нарече добро решение. По-специално, това често води до съобщенията за грешки в регистрационните файлове на сървъри, които са свързани с много нива CNC.

Например, ако: категория / име / - лекува доста успешно, тук просто: категория / - дори и при наличието на съответната директива на .htaccess файла. Тя издава предупреждение. Все пак, това не се отразява на работата на сайта. Освен това, има и редица други въпроси, но аз няма да навлизам в тях, защото те са чисто субективна.

Промени в настройките в .htaccess


RewriteEngine на
RewriteCond%! -f
RewriteCond%! -l
RewriteCond%! -d
RewriteRule ^ (. *) $ Index.php? Навивам = $ 1 [L, QSA]

Нека да разгледаме примера, даден по-подробно.

IfModule - както подсказва името, настоящата директива проверки за mod_rewrite.c модул на сървъра, което от своя страна дава директиви на работните реализация.

След това идва RewriteEngine - тази директива, която ви позволява да управлявате устройството за преобразуване статут. Обикновено тя е на разстояние с помощта на директивата за RewriteEngine, ние можем да го включите. За да направите това, като стойност показва: в.

С други думи, ако той има filename.html файл и призив към него отива, той ще бъде отворен този конкретен файл и да не прехвърля към машините за заявка процесор. По този начин, ние се реши няколко проблема наведнъж.

Трябва също да се отбележи, че тези условия са изградени върху обработката на променлива REQUEST_FILENAME - поискано името на файла.

С други думи, PHP-процесор получава само НК, като не се изключва възможността за получаване и динамични параметри по пощата и / или да получите.

Анализ на регулярния израз в RewriteRule

Аз отделям и да направи от примера се използва в регулярния израз: ^ (. *) $.

  • Checkmark символ (^) показва началото на низа на заявката.
  • Скобите се използват за разделяне на групи от регулярни изрази и да извлича подниз.
  • Периодът (.) Означава поне един знак, с изключение на нов ред.
  • Звездичката (*) означава произволен брой символи в низ, предшестват това.
  • Долар ($) съвпада с края на низа на заявката.

С други думи, ние се извлече подниз, състояща се от героите на заявката, от началото до края.

След това е индикация, PHP-скрипт index.php от местоположението на файла на сайта .htaccess. Навивам параметър стойност тук е първата (и в този случай, и само един) за извличане на подниз. За тази цел, тъй като стойността на променливата, каза е регулярен израз $ 1. Съответно, ако регулярния израз съдържа няколко извадки подниз, трябва да се уточни необходимия брой приоритет.

Бих искал също така да се отбележи, че регулярният израз може да бъде по-сложно, но в този случай примерът е повече от достатъчно.

За да обобщим

2plutov.by Е, има много опции. Моят пример ви позволява да попълни с ЦПУ без параметри линия като променлива стойност GET. Тя не се нуждае от фърмуера и др. всичко е просто и ясно. IMHO, разбира се.

2Vitaly Pestin който ще бъде на разположение за индексиране и + показва каноничен разбира мета.

2Sergey Steklov TNC вече е вградена в плъгин WordPress и не е необходимо тук. Разбира се, има добавка за някои кеширане плъгини за заобикаляне на стандартният механизъм за преглед на ЦПУ в WordPress и веднага прехвърли всичко на статичен, но тя също има своите проблеми. Като цяло WordPress е ужасно нещо от гледна точка на ресурсите.

2Sergey чаша приставката няма никакъв смисъл да се изключва, тъй като тя не консумира ресурси и обикновено са интегрирани само в администраторския панел.

Не проверих P3 плъгин натоварване (Plug-in Изпълнение Profiler), той показа, че плъгин създава малък товар. Някъде 4% от всички приставки.)) Може да звучи смешно, но когато не публикува, по това време, извадете щепсела. Ако това не е необходимо, аз се опитвам да се изключи по време на допълнителните приставки. Само когато човек създава малка натоварване, което е общата сума на тези плъгини може да бъде доста голям. Ето защо, за пореден път се изключва.))

2Sergey Steklov тук трябва да се разбере ясно какво един или друг товар. Всеки сценарий, програма и т.н. ако работят, са тежки, заемат памет и т.н. Разбира се, много зависи от това какъв вид щепсел, който използвате. Но, например, Cyr-To-шир е просто функция на транслитерация, която е причинена от добавяне и / или редактиране на поста. Въпреки това, основната тежест за заявка на база данни, в WordPress много от тях, но транслитерация плъгин определено не е свързана. По-конкретно, че приставката работи само в административната област и не работи в блога си.

Вкъщи аз използвах Cyr да шир подобрено. Понякога товара достига 17%. Така че има нещо! Това, което се проверява Cyr да шир, така че след като е ясно, че няма товар, така че сега се обърна към него. Ето защо, приставката е плъг-ин раздор.