Перенаправить documentroot в другую папку в conf apache или .htccess - PullRequest
2 голосов
/ 21 марта 2019

Добрый день

Я хочу переписать URL при запросе подкаталога Когда пользовательский запрос

172.0.0.1 / URL

я хочу переписать, чтобы этот URL указывал на

172.0.0.1 / URL / URL

, или корень документа находится в / var / www / html / url / url, сделайте эту точку равной

172.0.0.1 / URL

Ответы [ 2 ]

3 голосов
/ 02 апреля 2019

Хитрость заключается в том, чтобы избежать создания цикла перезаписи и перенаправления. Вы можете поместить этот код в корневую папку htaccess

RewriteEngine On

# Redirect /url/url/xxx to /url/xxx
RewriteCond %{THE_REQUEST} \s/(url)/url/(.*)\s [NC]
RewriteRule ^ /%1/%2 [R=301,L]

# Internally rewrite back /url/xxx to /url/url/xxx
RewriteRule ^(url)/((?!url/).*)$ /$1/$1/$2 [L]
0 голосов
/ 01 апреля 2019

Вы можете использовать .htaccess для перенаправления /url на /url/url

Просто создайте файл .htaccess на /var/www/html/ со следующим содержанием:

RewriteEngine on
RewriteRule ^/?url/(.*)$ /url/url/$1 [R,L]

Это перенаправит всевходящие запросы на /url и перенаправить их на /url/url

Но вы не можете перенаправить запросы на /url/url на /url Поскольку мы уже перенаправляем запрос на /url, это приведет к перехвату 22и браузер будет перенаправлять туда и обратно между /url и /url/url.

...