powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC localization - изменение url
18 сообщений из 18, страница 1 из 1
MVC localization - изменение url
    #38058191
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть необходимость сделать локализацию на сайте. Всё готово и работает, вот только не получается поменять урл при первом посещении сайта.
Что есть: английская и русская версия. Для русской добавляю в урл /ru (localhost:1111/ru, localhost:1111/ru/about)
Что я хочу сделать: если впервые зашли на страницу русскоговорящий( сделано ) и нет приставки /ru , то добавить её. Как это правильно сделать?

PS: Просмотрел кучу инфы, но не нашёл ничего по данному вопросу.
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38059221
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MAcKZloyЕсть необходимость сделать локализацию на сайте. Всё готово и работает, вот только не получается поменять урл при первом посещении сайта.
Что есть: английская и русская версия. Для русской добавляю в урл /ru (localhost:1111/ru, localhost:1111/ru/about)
Что я хочу сделать: если впервые зашли на страницу русскоговорящий( сделано ) и нет приставки /ru , то добавить её. Как это правильно сделать?

PS: Просмотрел кучу инфы, но не нашёл ничего по данному вопросу.

RedirectToAction
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061046
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAcKZloy,

Сделать subdomain (en.sitename.com), и не парится с ссылками.
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061120
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061168
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонMAcKZloy,

Сделать subdomain (en.sitename.com), и не парится с ссылками.
Чтобы совсем не париться со ссылками необходимо лишь учитывать переданную пользователем локаль, т.е. без изменения урл
А между вариантами en.sitename.com и sitename.com/en вообще разницы нет, имхо
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061371
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSА между вариантами en.sitename.com и sitename.com/en вообще разницы нет, имхо
Что значит нету? Во втором варианте всегда придется следить за тем, что бы ссылка выглядела /en/someaction, в первом совсем нет изменений при использовании относительных урлов, которые, местами могут быть прописаны вручную.
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061390
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парамон Во втором варианте всегда придется следить за тем, что бы ссылка выглядела /en/someaction

ммм ... вообщем не так много кода для слежки. всего одна функиця, но а для моей проблемы пришлось чуток больше написать.
вот код, который использовал для локализации: ссылка
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061391
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSПарамонMAcKZloy,

Сделать subdomain (en.sitename.com), и не парится с ссылками.
Чтобы совсем не париться со ссылками необходимо лишь учитывать переданную пользователем локаль, т.е. без изменения урл
А между вариантами en.sitename.com и sitename.com/en вообще разницы нет, имхо
Это легко, но не есть хорошо для поисковиков, потому и "парюсь"
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061393
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSЧтобы совсем не париться со ссылками необходимо лишь учитывать переданную пользователем локаль, т.е. без изменения урл

Переданную каким образом?
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061396
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAcKZloySanSYSпропущено...

Чтобы совсем не париться со ссылками необходимо лишь учитывать переданную пользователем локаль, т.е. без изменения урл
А между вариантами en.sitename.com и sitename.com/en вообще разницы нет, имхо
Это легко, но не есть хорошо для поисковиков, потому и "парюсь"

Это нужно хотя бы для того, чтобы иметь возможность тупо дать ссылку на какой то язык.
Для поисковиков, опять же лучше поддомен.
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061402
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAcKZloyммм ... вообщем не так много кода для слежки. всего одна функиця, но а для моей проблемы пришлось чуток больше написать.
вот код, который использовал для локализации: ссылка
Накой весь этот гемор? И теперь в каждом экшоне добавлять локаль? )
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061452
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонНакой весь этот гемор? И теперь в каждом экшоне добавлять локаль? )
Нет, только на уровне контроллера добавить атрибут, который сам всё делает
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061453
MAcKZloy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонЭто нужно хотя бы для того, чтобы иметь возможность тупо дать ссылку на какой то язык.

Плюсов тут много.
ПарамонДля поисковиков, опять же лучше поддомен.
А за это спасибо. Я только учусь :)
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061465
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAcKZloy...
Что я хочу сделать: если впервые зашли на страницу русскоговорящий( сделано ) и нет приставки /ru , то добавить её. Как это правильно сделать?

PS: Просмотрел кучу инфы, но не нашёл ничего по данному вопросу.ПарамонSanSYSЧтобы совсем не париться со ссылками необходимо лишь учитывать переданную пользователем локаль , т.е. без изменения урл

Переданную каким образом? Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Cache-Control:max-age=0
Connection:keep-alive
Cookie:403 (Forbidden)
Host:www.sql.ru
User-Agent:Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11

Для самого первого запроса можно учитывать Request Header Accept-Language ( см. п. 14.4 )
Выше я привел в пример список всех отправленных моим браузером заголовков при запросе этой страницы ( http://sql.ru/...)

Что лучше для поисковиков - хз, это темная наука, но майкрософт всегда (поправьте если нет) делает локализацию по URL, а не по домену, что собственно я считаю логичнее
Корень сайта должен быть один, а внутри же подразделы - английский, русский и т.п.
Хотя у вики для рус. и инг. разные руты, так что это скорее дело вкуса

Я бы не стал использовать атрибут перед каждым методом/классом, для того, чтобы можно было учитывать локализацию, проще сделать это в базовом классе контроллера, на Execute, собственно там же можно было бы и редиректить пользователя с указанием локали (при необходимости, конечно)

А узнать присутствие локали можно просто
При маршруте, к примеру таком:
Код: c#
1.
2.
3.
4.
5.
6.
routes.MapRoute(
   "Localization", // Route name
   "{lang}/{controller}/{action}/{id}", // URL with parameters
   new { lang = "ru-RU", controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
   new { lang = "\w\w-\w\w" } // Parameter constraint
);

На Execute контроллера можно проверить Request.RawUrl - если он начинается не по правилу \w\w-\w\w, то можно редиректить
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061544
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSно майкрософт всегда (поправьте если нет) делает локализацию по URL, а не по домену, что собственно я считаю логичнее

понятно :)
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061634
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонSanSYSно майкрософт всегда (поправьте если нет) делает локализацию по URL, а не по домену, что собственно я считаю логичнее

понятно :)Что тебе понятно?
Я не являюсь ярым фанатом MS
Более того - если посмотришь на приведенный выше мой User-Agent, то увидишь, что сижу я под Linux (а именно - под Ubuntu 12.10)

+ Прошу не подчеркивать мои слова вырезанные из контекста, пытаясь неизвестно что, таким образом, доказать
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061680
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSЧто тебе понятно?
Я не являюсь ярым фанатом MS
Более того - если посмотришь на приведенный выше мой User-Agent, то увидишь, что сижу я под Linux (а именно - под Ubuntu 12.10)

+ Прошу не подчеркивать мои слова вырезанные из контекста, пытаясь неизвестно что, таким образом, доказать
Понятны аргументы, которые были высказаны в качестве "считаю логичнее", других не заметил.
...
Рейтинг: 0 / 0
MVC localization - изменение url
    #38061790
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонSanSYSЧто тебе понятно?
Я не являюсь ярым фанатом MS
Более того - если посмотришь на приведенный выше мой User-Agent, то увидишь, что сижу я под Linux (а именно - под Ubuntu 12.10)

+ Прошу не подчеркивать мои слова вырезанные из контекста, пытаясь неизвестно что, таким образом, доказать
Понятны аргументы, которые были высказаны в качестве "считаю логичнее", других не заметил.Оу, так я неверно истолковал твой пост.. )
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC localization - изменение url
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]