1. 本文是域名配置零基础教程,如果你想让任何人在互联网上使用域名访问你的网站,那么这个时候就需要使用Nginx代理,普通install安装方式太繁琐并且不好管理,这里推荐使用docker的安装方式简单快捷。(省流:直接下载最后的附件到linux服务器上执行 docker-compose up -d 就行了)
2. 准备工作
① 云服务器 + 域名资源
②. 在工作台配置域名解析(通常在域名管理里,不同厂商大同小异)
③. 免费申请ssl证书,可以使用一年,到期重新申请(访问https域名时显示小绿锁,表示为安全网址不会浏览器被拦截,可以放心访问)
3. 进入linux服务器,创建nginx目录,使用docker-compose安装nginx ,新建docker-compose.yml 文件配置如下:
version: '3.3'
services:
nginx:
image: nginx
restart: always
hostname: nginx
container_name: nginx
privileged: true
ports:
- 80:80
- 443:443
volumes:
- ./nginx/conf/:/etc/nginx/ # 配置文件
- ./nginx/cert/:/etc/cert/ # ssl证书
- ./nginx/www/:/usr/share/nginx/html/ # 默认显示的index网页
- ./nginx/logs/:/var/log/nginx/ # 日志文件
4. nginx目录里创建cert、conf、logs、wwww 目录,mime.types、index.html文件 结构如下:
①. cert:ssl证书
②. conf:配置文件
③. logs:日志
④. www:默认显示index网页
⑤. nginx.conf 主配置
⑥. conf/server.d 应用配置目录(应用配置抽离,解耦)
⑦. conf/mime.types 文件类型默认处理方式(可省略)
⑧. www/index.html 网站默认显示内容
5. nginx.conf 配置如下:
events{}
http {
default_type application/octet-stream;
include /etc/nginx/mime.types;
include /etc/nginx/server.d/*.conf;
include /etc/nginx/conf.d/*.conf;
}
6. server.d/root.conf 配置如下:
server {
listen 80;
server_name operater.top www.operater.top; # 支持普通和www域名
return 301 https://www.operater.top$request_uri; # http自动跳转https
}
server {
listen 443 ssl;
server_name operater.top www.operater.top;
ssl_certificate /etc/cert/operater.top.pem; # 证书pem路径
ssl_certificate_key /etc/cert/operater.top.key; # 证书key路径
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root /usr/share/nginx/html; # 默认显示的网页
index index.html index.htm;
}
}
7. mime.types 配置如下:
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
image/png png;
image/svg+xml svg svgz;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/webp webp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
font/woff woff;
font/woff2 woff2;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.oasis.opendocument.graphics odg;
application/vnd.oasis.opendocument.presentation odp;
application/vnd.oasis.opendocument.spreadsheet ods;
application/vnd.oasis.opendocument.text odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
docx;
application/vnd.wap.wmlc wmlc;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
}
8. index.html:
Nginx
hello
9. 启动nginx: docker-compose up -d
10. 浏览器上输入域名查看效果:
11. 文件直接领走,少走弯路:http://159.75.175.235:9000/file/nginx.zip