ఈ వ్యాసంలో, వెబ్ ట్రాఫిక్ను HTTP నుండి Nginx లో సురక్షితమైన HTTPS కి ఎలా మళ్లించాలో మేము పని చేస్తాము.
ప్రతిస్పందనలు మరియు అభ్యర్థనలు HTTP లో సాదా టెక్స్ట్ రూపంలో తిరిగి ఇవ్వబడతాయి, అయితే HTTPS క్లయింట్ మరియు సర్వర్ సిస్టమ్ మధ్య కమ్యూనికేషన్ను గుప్తీకరించడానికి SSL/TLS ని ఉపయోగిస్తుంది. అందువల్ల అనేక కారణాల వల్ల, HTTP పై HTTPS ఉపయోగించబడుతుంది, ఇవి క్రింద జాబితా చేయబడ్డాయి:
- రెండు దిశలలో క్లయింట్-సర్వర్ మధ్య మొత్తం డేటా గుప్తీకరించబడింది. అయితే, అడ్డగించినట్లయితే ఎవరైనా సున్నితమైన సమాచారాన్ని యాక్సెస్ చేయలేరు.
- మీరు HTTPS ఉపయోగిస్తున్నప్పుడు, Google Chrome మరియు ఇతర బ్రౌజర్లు మీ వెబ్సైట్ డొమైన్ను సురక్షితంగా పరిగణిస్తాయి.
- HTTPS వెర్షన్ HTTP/2 ప్రోటోకాల్ ఉపయోగించి మీ పేర్కొన్న వెబ్సైట్ పనితీరును మెరుగుపరుస్తుంది.
- మీరు మీ వెబ్సైట్ డొమైన్ను HTTPS ద్వారా అందిస్తే, వెబ్సైట్ Google లో మెరుగ్గా ర్యాంక్ చేయబడుతుంది, ఎందుకంటే ఇది అన్ని HTTPS సురక్షిత వెబ్సైట్లకు అనుకూలంగా ఉంటుంది.
ప్రతి సైట్ వెర్షన్ కోసం ప్రత్యేక సర్వర్ బ్లాక్లో Nginx లో ట్రాఫిక్ HTTP ని HTTPS కి మళ్లించడానికి ఇది ప్రాధాన్యతనిస్తుంది. సర్వర్ యొక్క అసాధారణ ప్రవర్తనకు కారణమయ్యే దిశను ఉపయోగించి ట్రాఫిక్ను దారి మళ్లించడాన్ని నివారించాలని కూడా సిఫార్సు చేయబడింది.
HTTP నుండి HTTPS కి మొత్తం ట్రాఫిక్ను దారి మళ్లించండి
HTTP నుండి HTTPS వెర్షన్కు మొత్తం ట్రాఫిక్ను మళ్లించడానికి కింది మార్పులను Nginx కాన్ఫిగరేషన్ ఫైల్లో జోడించండి:
సర్వర్ {
వినండి 80డిఫాల్ట్_సర్వర్;
సర్వర్_పేరు _;
తిరిగి 301https: //$ హోస్ట్$ request_uri;
}
క్రింద, మేము పైన పేర్కొన్న ప్రతి పదాన్ని వివరించాము:
80 డిఫాల్ట్_సర్వర్ని వినండి - ఇది పోర్ట్ 80 లో అన్ని HTTP ట్రాఫిక్ను పట్టుకునే మీ సిస్టమ్ని సూచిస్తుంది.
సర్వర్_పేరు _ - ఇది ఏదైనా హోస్ట్ పేరుతో సరిపోయే డొమైన్.
301 తిరిగి ఇవ్వండి https: // $ host $ request_uri - ఇది మీ సెర్చ్ ఇంజిన్లకు శాశ్వతంగా దారిమళ్లిస్తుంది. వేరియబుల్ $ హోస్ట్ డొమైన్ పేర్లను కలిగి ఉందని ఇది నిర్దేశిస్తుంది.
మీరు కాన్ఫిగరేషన్ సెట్టింగ్లను మార్చిన తర్వాత, మీరు మీ సిస్టమ్లో Nginx సేవలను మళ్లీ లోడ్ చేయాలి. కాబట్టి, కింది ఆదేశాన్ని ఉపయోగించి మీ Nginx సేవలను మళ్లీ లోడ్ చేయండి:
$సుడోsystemctl రీలోడ్ nginxNginx లో పేర్కొన్న డొమైన్ కోసం HTTP ని HTTPS వెర్షన్కి మళ్ళించండి
మీ డొమైన్లో SSL ప్రమాణపత్రాన్ని ఇన్స్టాల్ చేసిన తర్వాత, ఈ డొమైన్ కోసం మీకు రెండు సర్వర్ బ్లాక్స్ ఎంపికలు ఉంటాయి. పోర్ట్ 80 లో వినే HTTP వెర్షన్ కోసం ఒక బ్లాక్, మరియు పోర్ట్ 443 లో రెండవ వెర్షన్ HTTPS. అయితే, HTTP నుండి HTTPS కి ఒకే వెబ్సైట్ డొమైన్ను రీడైరెక్ట్ చేయడానికి, మీరు Nginx కాన్ఫిగరేషన్ను తెరవాలి. మీరు/etc/nginx/సైట్లు-అందుబాటులో ఉన్న డైరెక్టరీలో ఈ కాన్ఫిగరేషన్ ఫైల్ను గుర్తించవచ్చు. ఏదేమైనా, మీరు ఈ ఫైల్ను కనుగొనలేకపోతే, మీరు దాని కోసం /etc/nginx/nginx.conf,/usr/local/nginx/conf లేదా/usr/local/etc/nginx తో వెతకవచ్చు, ఆపై దీన్ని చేయండి ఈ ఫైల్లో కింది మార్పులు:
సర్వర్ {వినండి 80;
సర్వర్_పేరు domain-name.com www.domain-name.com;
తిరిగి 301https://domain-name.com$ request_uri;
}
పై కోడ్ లైన్ను లైన్గా అర్థం చేసుకుందాం.
80 వినండి - పోర్ట్ 80 ని ఉపయోగించి, పేర్కొన్న డొమైన్ అన్ని ఇన్కమింగ్ కనెక్షన్ల కోసం సర్వర్ వింటుంది.
Server_name domain-name.com www.domain-name.com-ఇది డొమైన్ పేర్లను పేర్కొంటుంది. కాబట్టి, మీరు దారి మళ్లించాలనుకుంటున్న మీ వెబ్సైట్ డొమైన్ పేరుతో దాన్ని భర్తీ చేయండి.
తిరిగి 301 https: //domain-name.com$request_uri-ఇది సైట్ యొక్క HTTPS వెర్షన్కు ట్రాఫిక్ను తరలిస్తుంది. పూర్తి అభ్యర్థన URI కోసం $ request_uri వేరియబుల్ ఉపయోగించబడుతుంది, ఇందులో వాదనలు కూడా చేర్చబడ్డాయి.
కింది పద్ధతిని ఉపయోగించి, మీరు ట్రాఫిక్ను HTTPS www వెర్షన్కు సైట్ యొక్క www యేతర వెర్షన్కి మళ్ళించవచ్చు. Www మరియు www యేతర వెర్షన్ల కోసం ప్రత్యేక సర్వర్ బ్లాక్లో రీడైరెక్ట్ సృష్టించాలని సిఫార్సు చేయబడింది.
ఒక ఉదాహరణతో వివరిద్దాం. మీరు www HTTPS అభ్యర్ధనలను www యేతర వెర్షన్కి మళ్లించాలనుకుంటే, మీరు ఈ క్రింది కాన్ఫిగరేషన్ను అనుసరిస్తారు:
సర్వర్ {వినండి 80;
సర్వర్_పేరు domain-name.com www.domain-name.com;
తిరిగి 301https://domain-name.com$ request_uri;
}
సర్వర్ {
వినండి 443 ssl http2;
సర్వర్_పేరు www.domain-name.com;
#. . . ఇతర కోడ్
తిరిగి 301https://domain-name.com$ request_uri;
}
సర్వర్ {
వినండి 443 ssl http2;
సర్వర్_పేరు domain-name.com;
#. . . ఇతర కోడ్
}
Www.linuxhint.com వంటి డొమైన్ పేరును మీ డొమైన్తో భర్తీ చేయండి.
ముగింపు
Nginx సర్వర్లో HTTP వెర్షన్ నుండి HTTPS కి ట్రాఫిక్ను ఎలా మళ్లించాలో మేము చర్చించాము. Nginx కాన్ఫిగరేషన్ ఫైల్ సెట్టింగ్ని మార్చడం ద్వారా, మీరు నిర్ధిష్ట డొమైన్ కోసం HTTPS కి ట్రాఫిక్ను సులభంగా రీడైరెక్ట్ చేయవచ్చు లేదా అన్నింటినీ రీడైరెక్ట్ చేయవచ్చు. ఈ వ్యాసంలో మేము పేర్కొన్న ఈ పద్ధతి, వినియోగదారు అనుభవంలో ఏవైనా మార్పులు చేయడం ద్వారా మీ వెబ్సైట్ను మరింత సురక్షితంగా చేయడానికి మీకు సహాయపడవచ్చు.