Это моя конфигурация веб-сервера NGinx
сервер {
если ($хост ~ ^[^.]+\.betafox\.net$) {
вернуть 301 https://$host$request_uri;
} # управляется Certbot
если ($host = www.betafox.net) {
вернуть 301 https://$host$request_uri;
} # управляется Certbot
если ($host = betafox.net) {
вернуть 301 https://$host$request_uri;
} # управляется Certbot
слушать 80;
слушать [::]:80;
#имя сервера _;
корень /var/www/html;
имя_сервера betafox.net *.betafox.net;
#возврат 301 https://$host$request_uri;
индекс index.php index.html index.htm;
место расположения / {
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?q=$uri&$args;
прокси_пасс https://betafox.net/;
proxy_redirect https://betafox.net/ $host;
proxy_set_header Accept-Encoding "";
proxy_ssl_server_name включено;
}
расположение ~ \.php$ {
включить фрагменты/fastcgi-php.conf;
#fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/run/php/php8.0-fpm.sock;
fastcgi_pass unix:/etc/alternatives/php-fpm.sock;
}
}
сервер {
слушать 443 ssl default_server;
слушать [::]:443 ssl default_server;
корень /var/www/html;
индекс index.php index.html index.htm;
# имя сервера _;
имя_сервера betafox.net *.betafox.net;
# Максимальный размер загружаемого файла составляет 4 МБ - при необходимости измените его соответствующим образом.
client_max_body_size 512M;
client_body_buffer_size 128 КБ;
включить snippets/letsencrypt-nginx-certs.conf;
включить snippets/letsencrypt-nginx-route.conf;
место расположения / {
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?q=$uri&$args;
}
страница_ошибки 404 /404.html;
error_page 500 502 503 504 /50x.html;
местоположение = /50x.html {
корень /usr/share/nginx/html;
}
расположение ~ \.php$ {
включить фрагменты/fastcgi-php.conf;
#fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php8.0-fpm.sock;
fastcgi_pass unix:/etc/alternatives/php-fpm.sock;
}
ssl_certificate /etc/letsencrypt/live/betafox.net-0001/fullchain.pem; # под управлением Certbot
ssl_certificate_key /etc/letsencrypt/live/betafox.net-0001/privkey.pem; # под управлением Certbot
}
Большая его часть была автоматически изменена Certbot, когда я установил SSL-сертификаты как для своего полного доменного имени, так и для поддоменов. Проблема, с которой я столкнулся, связана с перенаправлением URL. Исходный URL-адрес www.betafox.net, когда пользователь вводит betafox.net, он перенаправляется на https://betafoxnet.www.betafox.net/ и там сообщение, которое говорит: Сайт, который вы искали, не существует.
Я только хочу, чтобы все пользователи, вводящие betafox.net, перенаправлялись на www.betafox.net. Я считаю, что Nginx может это сделать. Как я могу добиться такого?