Я пытаюсь написать директивы перенаправления в .htaccess для внутренней пересылки всех пользовательских запросов следующим образом:
- Каждый запрос в языковой папке должен перенаправляться на запрошенный файл со строкой языкового запроса:
example.com/en/contact.php -> example.com/contact.php?lang=en
- Перенаправьте любой запрос без языкового пути в языковую папку по умолчанию следующим образом:
example.com -> example.com/en
- Удалите косую черту, если адрес вводится с ней:
с example.com/en/ на example.com/en
- Для проектов папок каждый запрос должен вести к файлу view-project.php с соответствующими строками запроса:
example.com/en/projects/test -> example.com/view-project.php?lang=en&path=test
Вот моя попытка, но она не работает без косой черты в запросе, например: http://www.example.com/ru и не перенаправляет http://www.example.com в языковую папку по умолчанию.
RewriteEngine включен
RewriteRule ^(en|de)/(.*)$ $2?lang=$1 [L,QSA,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^projects/([^/\.]+)/?$ view-project.php?path=$1 [QSA,L]
Как я могу этого добиться?
Это возможно дубликат, и я извиняюсь за это. Я искал везде и прочитал около 100 сообщений, но я не нашел то, что ищу.