Одностраничный сайт

341
09 февраля 2018, 21:46

Всем привет!

Замучался вопросом как правильно сделать одностраничный сайт на php+js. Знаю, что есть ajax и как им пользоваться. Еще я знаю про History API и window.location, однако не могу понять как собрать это вместе, ведь использование js для отображения контента является нежелательным для SEO(Даже разбирать url на frontend как я понял тоже плохо).

Помогите мне найти хотя бы вектор куда искать, не первый месяц голову ломаю Например как написан vk.com там же одна страница, url меняется, SEO не самое плохое Заранее спасибо))

P.S использование js фреймворков меня не устраивает

Answer 1

Есть очень много способов правильно использовать ajax. И вы кстати очень путаете js и ajax=) Вы упомянули вк, я не работал в вк и детально не разбирал механизмы работы, я примерно попытаюсь рассказать как это может работать.

  1. Вы заходите на одностраничный сайт например вк, вам загружается общая страница, url https://vk.com.
  2. Вы тыкнули на раздел музыка, отображается та часть сайта которая предназначена для отображения вашей музыки, запросились ваши аудиозаписи и тп, в урл подставилось значение audioЧТОТОТАМ, так происходит каждый раз когда вы что то тыкаете.
  3. Вы скопировали ссылку https://vk.com/audioЧТОТОТАМ, и скинули куда то, будь то человек или бот поисковика или что то еще, перейдя по этой ссылке попадет на страницу где сразу будет открыт нужный раздел одностраничного сайта с нужным контентом. Это происходит из за того что веб сервер разбивает url, и в зависимости от этого генерит страницу по нужному сценарию, те например https://vk.com/audioЧТОТОТАМ по факту может являться что то типо этого https://vk.com/audio.php?iduser=ЧТОТОТАМ. Это то же самое что заходя на сайт http://example.com/ вызывается файл http://example.com/index.php. Вообщем в итоге для сео не чего не меняется

И вы просили сказать куда искать - rewrite nginx например. Еще раз повторю способов сделать хорошо очень много, вк скорее всего работает не совсем так как я написал, но это всего лишь пример подобной реализации. И еще, хороший программист не стесняется использовать фреймворки, в них нет не чего плохого.

READ ALSO
Выборка из MySQL записей без ссылающихся

Выборка из MySQL записей без ссылающихся

Есть 2 таблицы, одна содержит общие данные по пользователям, вторая более конкретные:

228
Как удалить историю чата

Как удалить историю чата

Как можно очистить историю чата и выйти в исходное состояние с кнопкой старт (возможно с подтверждением)Есть метод messages

205
Алгоритм замены данных в базе данных

Алгоритм замены данных в базе данных

Есть данные, которые я беру от APIИногда этот API любит подлагивать и возвращает данные с задержкой в 5-6, а иногда и 20-30 секунд, что, разумеется,...

219