Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   JS подмена части ULR на лету (https://javascript.ru/forum/misc/59012-js-podmena-chasti-ulr-na-letu.html)

laimas 24.10.2015 03:15

Цитата:

Сообщение от stem
При чем тут сервер я не пойму...

Ну да, а клиент значит причем? Не можете заставить редактор, но кто принимает от редактора данные сервер или клиент?
Домен должен задаваться переменной/константой, значение которой можно получить, тогда и переезды не страшны, и клиент не будет заниматься работой, которой он вообще не должен заниматься.

stem 24.10.2015 15:09

Цитата:

Сообщение от laimas (Сообщение 392979)
но кто принимает от редактора данные сервер или клиент?
Домен должен задаваться переменной/константой, значение которой можно получить, тогда и переезды не страшны, и клиент не будет заниматься работой, которой он вообще не должен заниматься.

Клиент этим и не занимается, он просто редактирует. И запрет абсолютных ссылок текущего домена всегда решался на уровне редактора, изначально клиент был уверен в том что копий сайта он точно не захочет, поэтому никто и не задумывался.
В общем я просто поиск и замену по базе сделал запросом.

laimas 24.10.2015 16:14

Цитата:

Сообщение от stem
Клиент этим и не занимается, он просто редактирует.


Клиент вынужден перебирать DOM структуру а затем еще производить изменения, что уже плохо. Но вы даже не задумываетесь о том, что ваши "битые" ссылки роботы не будут индексировать как ваши внутренние ссылки. И вы еще пытаетесь найти оправдание этой затее?

А нужно на сервере скриптом или в HTML-редакторе, если ссылки в файлах, найти таковые и изменить. И желательно заменить на переменную, и в тексте принимаемом от редактора заменять такие вхождения, или задумайтесь о модуле для своего редактора, который бы позволял работать с внутренними ссылками.

Ну а если вам наплевать и на индексацию, и на то что клиент будет ковыряться постоянно, делайте, я не преследую цель уговорить вас, я предлагаю задуматься.


Часовой пояс GMT +3, время: 19:32.