Я пробовал все, начиная с форумов, но без результата. Как я могу скрыть каталог «пример» со всех URL-адресов на веб-сайте. Например, когда пользователь вводит:
www.domain.com/example/en/file.php or www.domain.com/example/ru/file.php or www.domain.com/example/de/file.php
Я хочу, чтобы он видел только в URL:
www.domain.com/en/file.php or www.domain.com/ru/file.php or www.domain.com/de/file.php
но из
www.domain.com/example/en/file.php or www.domain.com/example/ru/file.php or www.domain.com/example/de/file.php
Мой текущий htaccess:
Options +FollowSymLinks -MultiViews RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^\.]+)$ $1.php [NC,L] RewriteCond %{HTTP_HOST} ^domain\.com$ [NC] RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L] #RewriteCond %{THE_REQUEST} /example/ [NC] #RewriteRule ^example/(.*)$ /$1 [L,R=301,NC,NE] #RewriteRule ^((?!example/).*)$ /example/$1 [L,NC]
ПРИМЕЧАНИЕ. В «примере» может быть больше каталогов, чем en, ru или de.
поместите этот код в файл DOCUMENT_ROOT/.htaccess
:
RewriteEngine On RewriteCond %{THE_REQUEST} /example/ [NC] RewriteRule ^example/(.*)$ /$1 [L,R=301,NC,NE] RewriteCond %{HTTP_HOST} ^domain\.com$ [NC] RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L] RewriteCond $1 !js [NC] RewriteRule ^((?!example/)[az]{2}/.*)$ /example/$1 [L,NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC] RewriteRule ^([^.]+)/?$ $1.php [NC,L]