- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
/?page=([0-9]+)
они по умолчанию будут адресованы в соответствии с настройкой DocumentIndex (в конфиге Apache, который, опять же в зависимости от настроек можно переопределить в .htaccess), в котором, (как правило) в том числе указывается index.php (наряду с index.html, index.htm и т.д.)
Т.е. запросы на /?page=***.. можно обработать
а) добавив в index.php (или, что более правильно, но всё равно "не идеологично" в wp-config) строку вида
б) используя auto_prepend_file
Т.е. запросы на /?page=***.. можно обработать
таким образом вы не сможете отказаться от mod_rewrite, потому что раньше был парсинг директив RewriteEngine RewriteBase RewriteRule.
В моем видении, нужно раньше определить запросы /?page=*** и для них отключить mod_rewrite, чтобы условие:
не срабатывало.
Ну это ляповство. Не думаю, что так кто-то делает. Мы используем mod_rewrite и довольствуемся.
В моем видении, нужно раньше определить запросы /?page=*** и для них отключить mod_rewrite, чтобы условие:
Вообще речь о том, что "если очень захотеть", то вообще все директивы Rewrite*** можно полностью убрать из .htaccess.. (начиная с Engine on).
Но изначально для оптимизации скорости предлагалось директивы с двойными регулярками вида:
либо
а) оптимизировать с заменой регулярок на равенство:
б) исключить.. а обработку перенести в PHP
Но, возвращаясь к исключению лишних правил...
определить запросы /?page=***
первая строчка "от wordpress" именно это и делает
p.s. В любом случае, это не та оптимизация, которой следует заниматься в первую очередь..
Вообще речь о том, что "если очень захотеть", то вообще все директивы Rewrite*** можно полностью убрать из .htaccess.. (начиная с Engine on).
Если захотеть, можно и горы свернуть и лоб об стену разбить.
---------- Добавлено 21.08.2019 в 18:06 ----------
первая строчка "от wordpress" именно это и делает
средствами mod_rewrite ибо в apache по-другому не принято.
index.php будет загружен уже после работы mod_rewrite.
1. Ещё раз.. если убрать директивы RewriteEngine on - никакие rewrite-директивы обрабатываться не будут.
2. Если поставить строчку с index.php - выше директив, они также обрабатываться не будут.
1. Ещё раз.. если убрать директивы RewriteEngine on - никакие rewrite-директивы обрабатываться не будут.
и тогда полностью отключить навигацию по сайту? :)
2. Если поставить строчку с index.php - выше директив, они также обрабатываться не будут.
Эту " RewriteRule ^index\.php$ - [L] " ?
RewriteRule разве не компонент mod_rewrite? :)
Gerga, зачем мешать всё-в-одно?
1. запросы /?page=*** без mod_rewrite придут в index.php
2. можно сократить количество каждый раз обрабатываемых правил, изменив их порядок (естественно, без отказа от mod_rewrite)
3. можно оптимизировать правила, чтобы вместо регулярок использовалось сравнение. Это быстрее, но вряд ли даст реально ощутимый прирост скорости.
4. можно сделать полноценную обработку URL-ов без mod_rewrite, используя страницу ошибки 404, в которой уже обрабатывать навигацию.
5. правило Rewrite index.php - обрабатывается mod_rewrite
Gerga, зачем мешать всё-в-одно?
Где мешанина? :)
да и вообще, без загрузки mod_rewrite.. для каждого запроса...
1. Я тут /ru/forum/comment/16162095 вам написал, что mod_rewrite полюбому будет загружаться. Хоть инклуд используйте, хоть в 1 обработчик перенаправлять.
4. можно сделать полноценную обработку URL-ов без mod_rewrite, используя страницу ошибки 404, в которой уже обрабатывать навигацию.
2. Не получится т.к. все равно пройдет через mod_rewrite и WP, а WP сделает редирект c /?page=12 на /page/12/
---------- Добавлено 21.08.2019 в 20:19 ----------
Можно сделать, чтобы WP не делал такой редирект, но зачем, если можно вообще исключить WP...
2. Не получится т.к. все равно пройдет через mod_rewrite и WP, а WP сделает редирект c /?page=12 на /page/12/
Вы так и не поняли..
1. убираем из .htaccess всё, что связано с Rewrite*
2. /?page=12 без rewrite обрабатывается по умолчанию (IndexDocument в Apache) в index.php ("оно" так работает.. на большинстве хостингов.. но можно настроить и по-другому)
3. WP (в соответствии с настройками движка, если заданы ЧПУ) редиректит на /page/12/ (или заданный в свойствах страницы/поста slug/alias/ЧПУ)
4. Apache не находит адрес и обращается к 404 странице, которую мы задаём через ErrorDocument
5. в 404 странице включается "свой" обработчик, устанавливает HTTP-код 200 и передаёт управление index.php, который по REQUEST_URI (/page/12/ в данном случае, category/blablabla/ /contacts и любых других) выводит нужную (в соответствии с логикой движка) страницу, либо возвращает 404 ошибку, но уже средствами CMS со всеми "плюшками".
1. убираем из .htaccess всё, что связано с Rewrite*
Ну тогда же мы полностью потеряем навигацию. Все ссылки сайта станут отдавать 404. Вы же помните, что домен остался прежним и все действия происходят в одной среде. Где для /?page=*** сделать редирект на указанную страницу, которая находится на этом же хосте и которую нужно показать с кодом 200.
Уточнения - сам домен не менялся
/ru/forum/comment/16161983
---------- Добавлено 21.08.2019 в 23:33 ----------
ivan-lev, дочитал и понял. Извините :)
---------- Добавлено 21.08.2019 в 23:48 ----------
Можно такую схему сделать, но скорость ответа как минимум на 10% хуже даже при наличии 80 RewriteRule...
Но все равно спасибо!