Недавно я купил сертификат SSL, который я хочу попробовать. Я также создал сервер VPS в первый раз, и после многих попыток и сердитого управления мне удалось установить LEMP и NGINX на Ubuntu 14.04, а также установить SSL-сертификат. Мой сайт wknet.se.NGINX http://example.com https://www.example.com rewrite, как?
Теперь я хочу переписать URL,:
----------------------------------------------------------------
| From | To |
----------------------------------------------------------------
| http://wknet.se | https://www.wknet.se |
| http://wknet.se/index.php | https://www.wknet.se |
| http://www.wknet.se/index.php | https://www.wknet.se |
| wknet.se | https://www.wknet.se |
| wknet.se/index.php | https://www.wknet.se |
| www.wknet.se/index.php | https://www.wknet.se |
| https://wknet.se | https://www.wknet.se |
| https://wknet.se/index.php | https://www.wknet.se |
----------------------------------------------------------------
После многих проб и ошибок, а также несколько опустошительных часов у меня есть только 2 переписывает осталось исправить:
----------------------------------------------------------------
| From | To |
----------------------------------------------------------------
| https://wknet.se | https://www.wknet.se |
| https://wknet.se/index.php | https://www.wknet.se |
----------------------------------------------------------------
Теперь, я не знаю, как их исправить! У меня есть googled и googled, и я проверил несколько хороших правил перезаписи для NGINX, но пока не понял.
Это мой первый раз, когда я работаю над протоколом SSL, Rewrite и т. Д. На NGINX.
Теперь, это то, как мои настройки сервера похожи на wknet.se:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
add_header Strict-Transport-Security max-age=15768000;
return 301 https://www.wknet.se$request_uri;
}
server {
listen 443 ssl;
server_name www.wknet.se;
root /var/www/wknet.se/html;
index index.php index.html index.htm;
ssl_certificate /etc/nginx/ssl/SSL.CRT;
ssl_certificate_key /etc/nginx/ssl/KEY.KEY;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM;
ssl_prefer_server_ciphers on;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location/{
try_files $uri $uri/ =404;
}
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
location = /index {
rewrite ^/index\.(php)$ https://www.wknet.se/ permanent;
}
location ~ /\.ht {
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 ~ /\. {
deny all;
error_log off;
log_not_found off;
}
location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
log_not_found off;
expires 365d;
}
location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|png|gif|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
access_log off;
log_not_found off;
expires max;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
location ~* \.(7z|ai|class|css|csv|ejs|eps|flv|html?|jar|jpe?g|js|json|lzh|m4a|m4v|mov|mp3|pdf|pict|pls|ps|psd|swf|tiff?|txt|webp)$ {
access_log off;
log_not_found off;
expires max;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
}
Если кто-то может помочь мне с этим я был бы очень счастлив! Кроме того, если у кого-то есть советы по настройкам моего сервера, чтобы внести некоторые улучшения, это поможет многого, потому что я не знаю, правильно ли я это сделал!
Спасибо!
Большое спасибо за то, что @kchan он отлично работал :) Он перенаправляет плавно. Я скопировал все и изменил его в соответствии со своими потребностями, и я скопировал его также на другой сайт, который у меня есть и на сервере. Но проблема в том, что он постоянно перенаправляется на defualt-сервер. Единственные ссылки, которые работают [https://www.webkreativ.hr] (https://www.webkreativ.hr) и [https://webkreativ.hr] (https://webkreativ.hr). Если вы наберете webkreativ.hr или [www.webkreativ.hr] (http://www.webkreativ.hr), вы будете перенаправлены на [https://www.wknet.se] (https: // www .wknet.se). Что я делаю не так? – damircalusic
У вас должен быть блок сервера по умолчанию, который является «полным» для всех запросов. Обычно вы должны установить * server_name * на * _ *, и в этом блоке вы можете перенаправить все запросы на любой URL-адрес, который вы хотите. Я бы проверил ваши серверные конфигурации nginx, чтобы узнать, к чему перенаправляется серверный блок по умолчанию. См. Документацию nginx для примеров блочного блока «catch-all»: http://nginx.org/en/docs/http/server_names.html – kchan
Здесь вы можете увидеть настройки -> [nginx.conf] (https://www.wknet.se/nginx/nginx.conf.txt). Здесь вы можете увидеть настройки -> [wknet.se] (https://www.wknet.se/nginx/wknet.se.txt). Здесь вы можете увидеть настройки -> [webkreativ.hr] (https://www.wknet.se/nginx/webkreativ.hr.txt). Я был бы очень рад, если бы вы могли помочь мне в этом. – damircalusic