Пример UserDir

Я использовал Ubuntu, Nginx, PHP, MySQL.

Я хочу UserDir http://example.com/~userID

Я редактирую файл vi nginx по умолчанию

location ~ ^/~(.+?)(/.*)?$ {
alias /home/$1/public_html$2;
index  index.html index.htm;
autoindex on;
}

я не понимаю эти строки …

location ~ ^/~(.+?)(/.*)?$

alias /home/$1/public_html$2;

Что это значит ~ ^/~(.+?)(/.*)?$?

Что это значит $1, $2?

1

Решение

~ — регистрозависимое соответствие
где url начинается (^) с косой черты и тильды (/ ~), затем ставит в скобки точку (.) любого символа с одним или несколькими вхождениями (+), который может или не может быть, независимо от (?), закрывающей скобки, которая соответствует $ 1, затем $ 2 — следующая косая черта, совпадающая с косой чертой (/), любой символ (.) с нулем или множеством вхождений, которые могут легко не существовать (?) и заканчиваться ($)

так что если URL выглядит www.example.com/~tengiz/qw123 , $ 1 будет равно «~ tengiz», а $ 2 равно «/ qw123», и выражение на самом деле должно выглядеть так, я полагаю:

^\/~(.+?)\/(.*)?$
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]