here ruby on rails code redirect request https://example.com
https://www.example.com
:
class applicationcontroller < actioncontroller::base before_filter :add_www_subdomain private def add_www_subdomain if rails.env.production? unless /^www/.match(request.host) redirect_to("#{request.protocol}www.#{request.host_with_port}",status: 301) end end end end
now issue is, when lands @ https://example.com/product/abc
being redirected https://www.example.com
supposedly, should go https://www.example.com/product/abc
. there trick this? thanks
redirect_to("#{request.protocol}www.#{request.host_with_port}#{request.fullpath}",status: 301)
i think kind of redirect more suited web server. these rules:
apache
<virtualhost *:80> servername example.com redirect permanent / http://www.example.com/ </virtualhost>
nginx
server { listen 80; server_name www.domain.com; # $scheme http protocol # , 301 best practice tablet, phone, desktop , seo return 301 $scheme://domain.com$request_uri;
}
server { listen 80; server_name domain.com; # here goes rest of config file # example location / { rewrite ^/cp/login?$ /cp/login.php last; # etc etc... } }
Comments
Post a Comment