
Я создаю систему управления QR-кодами RYO для наших маркетинговых начинаний, размещая все QR-коды на определенной структуре URL, которые я затем буду пересылать через nginx в указанные места.
Я пытаюсь настроить эту структуру:
server {
listen 80;
server_name mydomain.com/c/m/b/1;
return 301 $scheme://myotherdomain.com$request_uri;
}
при запуске nginx моя строка с именем сервера вызывается из-за подозрительных символов. Можно ли использовать слеши в доменном имени?
решение1
Это основано на предположении, чего вы хотите.
Если вы хотите перенаправить все http://mydomain.com/
URL-адреса на http://myotherdomain.com/
, вам следует сделать это следующим образом:
server {
listen 80;
server_name mydomain.com;
rewrite ^ http://myotherdomain.com$request_uri permanent;
}
Если вы хотите перенаправить только по определенному пути, вы можете использовать директиву location
:
server {
listen 80;
server_name mydomain.com;
location /c {
rewrite ^ http://myotherdomain.com$request_uri permanent;
}
}
решение2
Нет, слеши не являются допустимой частью доменного имени или не могут использоваться для разделения путей и части протокола (http://) URL-адреса.
Посмотрите, есть ли расширенные параметры (регулярные выражения) дляserver_name
помогает оператор конфигурации.