我已经尽一切努力来解决这个问题,但却找不到任何解决方案。
所以我的问题是我不能拥有 lemeilleurducbd.com 或https://lemeilleurducbd.com重定向至 www.lemeilleurducbd.com
这是我的配置:
我有一个托管域名“lemeilleurducbd.com”的共享服务器,并且我有一个专用服务器(Ip:195.154.118.208),我在该服务器中安装了我的网站。
这是我的专用服务器上的 nginx conf 文件:
server {
# Ipv4
# IPv6
# listen [::]:80;
# SSL Ipv4 & v6
# listen 443 default_server ssl;
# listen [::]:443 ssl;
# ssl_session_timeout 24h;
# ssl_session_cache shared:SSL:10m;
# ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
# ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:RSA+3DES:AES128-SHA:!ADH:!AECDH:!MD5;
# ssl_prefer_server_ciphers on;
# Do not forget to create this file before with OpenSSL : "openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048"
# ssl_dhparam /etc/nginx/ssl/dhparam.pem;
# Your domain names here
server_name www.lemeilleurducbd.com lemeilleurducbd.com 195.154.118.208;
index index.php index.html index.htm;
root /var/www/lemeilleurducbd.com/public_html;
# Your admin folder
set $admin_dir /admin47qgshuud;
# Gzip Settings, convert all types.
gzip on;
gzip_vary on;
gzip_proxied any;
# Can be enhance to 5, but it can slow you server
# gzip_comp_level 5;
# gzip_min_length 256;
gzip_types
application/atom+xml
application/javascript
application/json
application/ld+json
application/manifest+json
application/rss+xml
application/vnd.geo+json
application/vnd.ms-fontobject
application/x-font-ttf
application/x-web-app-manifest+json
application/xhtml+xml
application/xml
font/opentype
image/bmp
image/svg+xml
image/x-icon
text/cache-manifest
text/css
text/plain
text/vcard
text/vnd.rim.location.xloc
text/vtt
text/x-component
text/x-cross-domain-policy;
# Supposed to be the case but we never know
# text/html;
# Global rewrite not depending on languages
rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last;
rewrite "^/c/([0-9]+)(\-[_a-zA-Z0-9-]*)/(.*)\.jpg$" /img/c/$1$2.jpg last;
rewrite "^/c/([_a-zA-Z-]+)/(.*)\.jpg$" /img/c/$1.jpg last;
rewrite "^/([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/(\P{M}\p{M}*)*\.jpg$" /img/p/$1-$2$3.jpg last;
rewrite "^/([0-9]+)\-([0-9]+)/(\P{M}\p{M}*)*\.jpg$" /img/p/$1-$2.jpg last;
rewrite "^/([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$1$2.jpg last;
rewrite "^/([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$1$2$3.jpg last;
rewrite "^/([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$1$2$3$4.jpg last;
rewrite "^/([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$4/$1$2$3$4$5.jpg last;
rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.jpg last;
rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7.jpg last;
rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8.jpg last;
rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.jpg$" /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9.jpg $
rewrite "^/module/([_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)$" /index.php?fc=module&module=$1&controller=$2 last;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
# Symfony controllers
location ~ /(AdminSendcloud|AdminDashboard|international|_profiler|module|product|feature|attribute|supplier|combination|specific-price|configure)/(.*)$ {
try_files $uri $uri/ /index.php?q=$uri&$args $admin_dir/index.php$is_args$args;
}
# Redirect needed to "hide" index.php
location / {
#try_files $uri $uri/ /index.php$uri&$args;
try_files $uri $uri/ /index.php?$args;
# Old image system ?
rewrite ^/([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last;
rewrite ^/([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last;
rewrite ^/([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last;
rewrite ^/([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last;
rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last;
rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last;
rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last;
rewrite ^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg$
rewrite ^/c/([0-9]+)(-[.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+.jpg$ /img/c/$1$2$3.jpg last;
rewrite ^/c/([a-zA-Z_-]+)(-[0-9]+)?/.+.jpg$ /img/c/$1$2.jpg last;
}
error_page 404 /index.php?controller=404;
# Static assets delivery optimisations
add_header Strict-Transport-Security max-age=31536000;
# Cloudflare / Max CDN fix
location ~* \.(eot|otf|ttf|woff|woff2)$ {
add_header Access-Control-Allow-Origin *;
}
location ~* \.(css|js|docx|zip|pptx|swf|txt|jpg|jpeg|png|gif|swf|webp|flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav|mp4|m4v|ogg|webm|aac)$ {
expires max;
log_not_found off;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
# Deny access to .htaccess .DS_Store .htpasswd etc
location ~ /\. {
deny all;
}
# PHP 7 FPM part
location ~ [^/]\.php(/|$) {
fastcgi_index index.php;
# Switch if needed
include /etc/nginx/fastcgi_params;
#include fcgi.conf;
# Do not forget to update this part if needed
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_keep_conn on;
fastcgi_read_timeout 1200s;
fastcgi_send_timeout 300s;
# In case of long loading or 502 / 504 errors
# fastcgi_buffer_size 256k;
# fastcgi_buffers 256 16k;
# fastcgi_busy_buffers_size 256k;
client_max_body_size 10M;
# Temp file tweak
fastcgi_max_temp_file_size 0;
fastcgi_temp_file_write_size 256k;
}
# Allow access to robots.txt but disable logging every access
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# Prevent injection of php files in directories a user can upload stuff
location /upload {
location ~ \.php$ { deny all; }
}
location /img {
location ~ \.php$ { deny all;}
}
# Ban access to source code directories
location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor)/ {
deny all;
}
# Banned file types
location ~ \.(htaccess|yml|log|twig|sass|git|tpl)$ {
deny all;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/lemeilleurducbd.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/lemeilleurducbd.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = www.lemeilleurducbd.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = lemeilleurducbd.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name www.lemeilleurducbd.com lemeilleurducbd.com;
listen 80;
return 404; # managed by Certbot
}
我已经联系了我的网站托管商(online.net),他们告诉我,错误配置出现在我的服务器上,但在这种情况下,这是我的 lemeilleurducbd.com 的 DNS 配置
86400 AAAA 2001:bc8:4::3
86400 MX mx.online.net.
86400 MX mx-cache.online.net.
autoconfig 86400 CNAME mail-autoconfig.online.net.
86400 TXT "v=spf1 include:spf.online.net ?all"
db31456-presta 14400 CNAME pf8-mysql.online.net.
dev2 14400 CNAME pf32-web.online.net.
db104879 86400 CNAME pf8-mysql.online.net.
dev 14400 CNAME pf32-web.online.net.
www 3600 A 195.154.118.208
@ 3600 A 195.154.118.208
我自己完成了所有配置,我意识到由于我是初学者,所以可能会比较麻烦。但我还是在这里发帖,希望可以很容易找到解决方案,否则我会询问并付费给专业人士。
感谢您的帮助
艾梅里克
答案1
您没有在端口 443 上进行重定向。
您应该lemeilleurducbd.com
从第一个服务器部分中删除 listen 指令,并添加用于 HTTPS 重定向的附加服务器部分:
server {
server_name lemeilleurducbd.com;
listen 443;
ssl_certificate /etc/letsencrypt/live/lemeilleurducbd.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/lemeilleurducbd.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
location / {
return 301 https://www.lemeilleurducbd.com$request_uri;
}
}
答案2
重定向未在 https 服务中配置,仅在 http 中配置。
添加:
if ($host = lemeilleurducbd.com) {
return 301 https://www.$host$request_uri;
}
第一个server {}
区块中的某个地方应该可以解决问题