- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Друзья! Помогите пожалуйста добить ЧПУ на самописном сайте.
У меня 3 категории на сайте, это "Страны", "Жанры", "Страны и Жанры". Мне нужны ссылки вида:
Пока получилось только сделать страны и страницы со статьей. Но вот уже заметил что файлы .svg стали отображаться как страница. И как быть с категорией "жанры" и "страны и жанры"? Прописал в .htaccess:
Не могу найти нормальную статью по работе с ЧПУ. Помогите пожалуйста. С ув.
Друзья! Помогите пожалуйста добить ЧПУ на самописном сайте.
Пока получилось только сделать страны и страницы со статьей. Но вот уже заметил что файлы .svg стали отображаться как страница. И как быть с категорией "жанры" и "страны и жанры"?
По мне так оптимально - единая точка входа index.php и там обработать $_SERVER['REQUEST_URI']
Например завести правила для 1 сегмента урла
и в зависимости 1 сегмента от правил выполнить соотв. действие
Друзья! Но вот уже заметил что файлы .svg стали отображаться как страница.
[off]
простите, но вы все делаете не правильно :-\
если уж делать самопис, то с осознанием как все должно быть в идеале.
а в идеале nginx должен готовую статику раздавать моментально. и никаких php и уж тем более .htaccess не должно фигурировать между запросом и отдачей ответа.
с .htaccess ковыряются когда руки связаны какой-то жизненно необходимой cms, переделывать которую нет времени/возможности
делайте допустим вот все тоже самое, но чтоб скрипт этот сохранял результат отдельными файлами.
и когда надо обновить - перезапускаете регенерацию. лучше конечно не всего, а лишь части изменившейся.
[/off]
mff, апач не умеет отличать страны от жанров - ему всё равно, что это, austria или animals.
Поэтому у Вас 2 варианта на выбор:
1. Делать адресацию вида
https://wc.ru/genre/animals/
https://wc.ru/country/austria/
2.Направлять запросы на index.php и там разруливать их.
На данный момент развития интернета, лучше всё разруливать в index.php
Это более универсальный способ, который может корректно работать даже без апатча как такового.
timo-71, большое вам спасибо! Прописал в htaccess ваши коды, но посему то всеравно показывает svg как страницу: http://mj2.ru/img/views.svg
EvGenius, я извиняюсь но зачем мне движок для простенького каталога веб-камер состоящего из 4 страниц и нескольких табличек в базе данных? И вообще я не любитель использовать готовые движки, модули. В них 90% не нужного и только 10% нужного. Перепиливай их потом и забудь про обновления... Максимум могу плеер какой нибудь использовать готовый.
делайте допустим вот все тоже самое, но чтоб скрипт этот сохранял результат отдельными файлами.
и когда надо обновить - перезапускаете регенерацию. лучше конечно не всего, а лишь части изменившейся.
Спасибо, но ни чего не понял :( Какой скрипт? Какой результат? Мне бы пример/кусок кода...
1. Делать адресацию вида
https://wc.ru/genre/animals/
https://wc.ru/country/austria/
Этот вариант ни как не подходит. Много лишнего.
2.Направлять запросы на index.php и там разруливать их.
Не могли бы посоветовать какую нибудь статью по этой тематике, написанную доступным языком?
С ув.
Этот вариант ни как не подходит. Много лишнего.
Это самый вменяемый вариант из простых: есть имя коллекции/признака, есть имя элемента/значение признака.
Посмотрите мою статью Как сделать единую точку входа с ЧПУ? – как раз для начинающих.
---------- Добавлено 16.02.2019 в 19:15 ----------
---------- Добавлено 16.02.2019 в 19:23 ----------
И вообще я не любитель использовать готовые движки, модули. В них 90% не нужного и только 10% нужного. Перепиливай их потом и забудь про обновления
Ну перепиливай давай тогда свою самописку и то же про обновления забудь.
Посмотрите мою статью Как сделать единую точку входа с ЧПУ? – как раз для начинающих.
Коллега, большое спасибо за статейку. Немножко разобрался.
В общем я так понял, нужно делать в индексном файле единый обработчик и, как правильно сказать, роутер, то есть подгружать нужный файл php исходя из данных, полученных в URI? За одно там же проверить, есть ли такие данные в базе и если нету, выдавать ответ отличный от 200, то есть направлять на страницу 404? 🙄
С ув.
Зачем городить велосипеды? Давно уже написаны хорошие классы роутеров. С полноценным функционалом.
К примеру это https://github.com/bramus/router
По поводу статики выше правильно сказали, что лучше отдавать nginx. Связка апач и нжинкс показывает прекрасную скорость.
Если интересно, могу скинуть готовые конфиги для небольших проектов.
В общем я так понял, нужно делать в индексном файле единый обработчик и, как правильно сказать, роутер, то есть подгружать нужный файл php исходя из данных, полученных в URI?
Единый обработчик – это фронт-контроллер. Роутер – обычно лишь его часть. Например, во фронте можно выполнять общие для всего сайта конфигурирование, авторизацию и т.п. Или выполнять какую-то общую финальную обработку после возврата из частного обработчика (работа роутера обычно заканчивается вызовом частного обработчика). Подгружать один файл – это слишком упрощенное представление. Обычно при формировании страниц/подготовке др. ответа участвует много файлов. Например, даже в простейшем движке по ссылке выше для сборки страницы помимо частного обработчика (который кстати может быть пропущен, т.к. фронт типичные действия по выборке данных из БД выполняет сам) обычно подключаются файлы частного и общего шаблонов – это как раз пример финальной обработки вне частного обработчика. Прочитать об этом более подробно, а также посмотреть на примеры частного и общего шаблонов можно тут.
Именно так. Это одна из задач роутера – инициировать выдачу 404-ой (необязательно выдавать самому) при «непопадании» адреса запроса под заранее заложенные правила. Например, движок по ссылке выше проверяет «попадание» под единственную заложенную маску для соответствия адреса общему предопределенному формату и отсеивания недопустимых символов в нем. А ведь можно выполнять такую проверку в цикле, обходя «роуты» в порядке приоритета и проверяя попадание под их маски.