Я использую 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