Mình có cài Let’s Encrypt SSL tren hocvps giờ mình muốn chuyển toàn bộ url sang domain mới những không thể nào Redirect url cũ dạng https://olddomain sang https/newdomain. Mình có thêm đoạn
server {
server_name .olddomain.com;
return 301 http://newdomain.com$request_uri;
}
Nhưng khi gõ www.olddomain thì ok nhưng gõ https://olddomain thì khô chuyển hương
nhờ các bác chỉ giúp
Cách chuyển Redirect Url 301 sang domain mới
Phần trên bạn mới chỉ set cho HTTP. Bạn phải set cả redirect HTTP, tức bạn làm 1 block 443 tương tự. Ví dụ làm 1 block chỉ để redirect
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
server_name abcyxyz
return 301 https://www.example.com$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.example.com;
}
mình đã theme 2 block vào cuối file nginx conf nhưng vẫn ko ok. Nhờ bạn kiểm tra giúp
…
server {
listen 443 ssl http2;
server_name www.tenmiencu.net;
# SSL
ssl_certificate /etc/letsencrypt/live/tenmiencu.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tenmiencu.net/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
rewrite ^(.*) https://tenmiencu.net$1 permanent;
}
server {
listen 80;
server_name .tenmiencu.net;
rewrite ^(.*) https://tenmiencu.net$1 permanent;
}
server {
listen 443 ssl http2;
# access_log off;
access_log /home/tenmiencu.net/logs/access.log;
# error_log off;
error_log /home/tenmiencu.net/logs/error.log;
root /home/tenmiencu.net/public_html;
index index.php index.html index.htm;
server_name tenmiencu..net;
# SSL
ssl_certificate /etc/letsencrypt/live/tenmiencu.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tenmiencu.net/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
# Improve HTTPS performance with session resumption
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;
# DH parameters
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
# Enable HSTS
add_header Strict-Transport-Security "max-age=31536000" always;
# Custom configuration
include /home/tenmiencu.net/public_html/*.conf;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 32k;
fastcgi_buffers 8 16k;
fastcgi_busy_buffers_size 32k;
fastcgi_temp_file_write_size 32k;
fastcgi_intercept_errors on;
fastcgi_param SCRIPT_FILENAME /home/tenmiencu.net/public_html$fastcgi_script_name;
}
location ~ /\. {
deny all;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~* \.(3gp|gif|jpg|jpeg|png|ico|wmv|avi|asf|asx|mpg|mpeg|mp4|pls|mp3|mid|wav|swf|flv|exe|zip|tar|rar|gz|tgz|bz2|uha|7z|doc|docx|xls|xlsx|pdf|iso|eot|svg|ttf|woff)$ {
gzip_static off;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
access_log off;
expires 30d;
break;
}
location ~* \.(txt|js|css)$ {
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
access_log off;
expires 30d;
break;
}
}
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
server_name .tenminecu.net;
return 301 https://tenmienmoi.net$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.tenmiencu.net;
return 301 https://tenmienmoi.net$request_uri;
}
Block ý bạn đang cho xem web chứ bạn có cho nó redirect đâu. Bạn nhìn lại cái block này đi
server {
listen 443 ssl http2;
root /home/tenmiencu.net/public_html;
server_name tenmiencu…net;
}