Назад | Перейти на главную страницу

Как настроить файл nginx для перезаписи URL-адреса?

Я использую nginx (1.4.6-1ubuntu3.4) в Ubuntu 14.04. Когда кто-то посещает страницу, например http://mymaindomain.com/page1, Я хочу переписать его, чтобы включить www поддомен. Таким образом, если кто-то посетил предыдущий URL-адрес, перезаписанный URL-адрес будет http://www.mymaindomain.com/page1. Поэтому я добавил директиву «сервер»:

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
        worker_connections 768;
        # multi_accept on;
}

http {
…
}

server {
  server_name mymaindomain.com;
  rewrite ^ http://www.mymaindomain.com$request_uri permanent;
}

до конца моего /etc/nginx/nginx.conf файл. Но после перезапуска сервера я получаю сообщение об ошибке:

2016/11/04 22:12:33 [emerg] 1063#0: "server" directive is not allowed here in /etc/nginx/nginx.conf:75

Как правильно настроить сервер nginx для правильной перезаписи моего URL?

Блок server должен находиться внутри блока http.

Это упоминается в документации NGINX по ссылке ниже (см. Где написано «контекст»): http://nginx.org/en/docs/http/ngx_http_core_module.html#server