Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 09.05.2020
Сообщений: 3
1

Редирект мультиязычного сайта

22.11.2020, 13:50. Показов 1272. Ответов 0

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста, с htaccess!

Цель: сделать многостраничный мультиязычный сайт с seo-friendly url. Русский по умолчанию.

Язык устанавливается с помощью get запроса:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if (isset($_GET['lang']) && !empty($_GET['lang'])) {
 
    $_SESSION['lang'] = $_GET['lang'];
 
    if (isset($_SESSION['lang']) && $_SESSION['lang'] != $_GET['lang']) {
 
        echo "<script type='text/javascript>location.reload()</script>";
 
    }
 
} else {
 
    $_SESSION['lang'] = 'ru';
 
}
 
include "languages/{$_SESSION['lang']}.php";
Ссылки должны быть такого вида:

https://mysite.com
https://mysite.com/en
https://mysite.com/page
https://mysite.com/en/page

Есть htaccess:

Код
    RewriteEngine On

    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ https://%1/$1 [L,R=301]

    RewriteRule ^(index|contact|gallery|about)$ $1.php [NC,L]

    RewriteRule ^(ru|en)?/?(.*)?$ $2?lang=$1 [L,QSA]
Вроде как все и работает, но проблема возникает именно во 3-ей и 4-ой ссылке (https://mysite.com/page, https://mysite.com/en/page) - они не работают. Работают только в случае, если добавить расширения .php - https://mysite.com/page.php и https://mysite.com/en/page.php.

Подскажите, как поправить htaccess или лучше применить какой то другой путь реализации данной функции.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2020, 13:50
Ответы с готовыми решениями:

Редирект 503 на папку сайта
Добрый день! У меня задача - сделать заглушку для сайта, чтобы при заходе на все страницы сайта...

Редирект с точки входа сайта на +файл
Доброго дня уважаемые коллеги. Нужна помощь. Есть адрес вида myhost/ в нем есть файл...

Редирект с поддоменов на страницы другого сайта
Всем ку! Нужна помощь... Есть сайт, весь утыканный поддоменами, одна страница = 1 поддомен....

Редирект одного сайта на разные домены
Всем привет. Я новичок в nginx, поэтому хотелось бы услышать можно ли решить мою &quot;заковыристую&quot;...

0
22.11.2020, 13:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2020, 13:50
Помогаю со студенческими работами здесь

Продвижение мультиязычного сайта
Здравствуйте, есть мультиязычный сайт на 40 языков, которому около года. есть уже 100-200 ссылок...

Выбор кодировки для мультиязычного сайта
Всем привет. Подскажете, какую кодировку следует использовать в БД для работы с текстом на русском,...

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

Нужно создать редирект сайта случайным образом, Случайный редирект на 1 из 3 сайтов
Мне нужно написать код или скрипт чтобы при переходе на сайт сразу происходил редирект на 1 из 3...

Нужно создать редирект сайта случайным образом, Случайный редирект на 1 из 3 сайтов
Мне нужно написать код или скрипт чтобы при переходе на сайт сразу происходил редирект на 1 из 3...

Редирект сайта
Здравствуйте! Подскажите как сделать редирект страницы сайта в файле .htaccess. Например есть сайт...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru