Linux Ubuntu安装和配置nginx教程

管理员
2023-04-19 / 0 评论 / 24 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2023年04月19日,已超过312天没有更新,若内容或图片失效,请留言反馈。

配置 Nginx 的过程可以分为以下几个步骤:

安装 Nginx
在 Linux 系统上,可以使用包管理器来安装 Nginx。本教程将使用 Ubuntu系统作为配置教程,使用 apt-get 命令安装nginx:

sudo apt-get update
sudo apt-get install nginx

配置 Nginx
Nginx 的配置文件位于 /etc/nginx/nginx.conf。可以使用任何文本编辑器来编辑该文件,比如 vim 或 nano。

默认情况下,Nginx 的配置文件已经包含了一个基本的服务器块:

http {
    server {
        listen       80;
        server_name  localhost;
        root         /usr/share/nginx/html;

        location / {
            index  index.html index.htm;
        }
    }
}

这个服务器块定义了一个监听 80 端口的服务器,当访问 localhost 时,Nginx 会返回 /usr/share/nginx/html 目录下的 index.html 或 index.htm 文件。

如果需要添加更多的服务器块,可以在 http 块内添加 server 块。

启动 Nginx
Nginx 的启动命令是:

sudo systemctl start nginx

可以使用以下命令检查 Nginx 是否已经启动:

sudo systemctl status nginx

如果 Nginx 已经启动,会输出类似于以下的信息:

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2023-04-13 12:34:56 UTC; 5s ago
     Docs: man:nginx(8)
  Process: 1234 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 1235 (nginx)
    Tasks: 2 (limit: 2368)
   Memory: 1.9M
   CGroup: /system.slice/nginx.service
           ├─1235 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─1236 nginx: worker process

测试 Nginx
使用浏览器访问服务器的 IP 地址或域名,如果一切正常,应该可以看到 Nginx 的欢迎页面。

这是一个基本的 Nginx 配置过程。如果需要更高级的配置,可以参考官方文档或者其他教程。

配置虚拟主机
虚拟主机是指在同一台服务器上运行多个网站,每个网站都有自己的域名和目录。Nginx 支持虚拟主机配置,可以为不同的域名或 IP 地址设置不同的服务器块。

例如,假设我们有两个域名 example.com 和 blog.example.com,我们可以在 Nginx 配置文件中添加以下的服务器块:

http {
    server {
        listen       80;
        server_name  example.com;
        root         /var/www/example.com;

        location / {
            index  index.html index.htm;
        }
    }

    server {
        listen       80;
        server_name  blog.example.com;
        root         /var/www/blog.example.com;

        location / {
            index  index.html index.htm;
        }
    }
}

这个配置中定义了两个服务器块,分别对应 example.com 和 blog.example.com。Nginx 根据客户端请求的域名来选择对应的服务器块。

配置 SSL
SSL(Secure Sockets Layer)是一种用于保护网站数据传输安全的加密协议。为了启用 SSL,需要为域名配置 SSL 证书。

首先,需要在服务器上安装 OpenSSL 工具。在 Ubuntu 上,可以使用以下命令安装:

sudo apt-get install openssl

然后,需要生成 SSL 证书。可以使用 OpenSSL 工具来生成自签名的证书:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt

这个命令会生成一个自签名的 SSL 证书。可以根据需要修改证书的有效期和密钥长度。

接下来,需要在 Nginx 配置文件中添加 SSL 配置。以下是一个基本的 SSL 配置示例:

http {
    server {
        listen       80;
        server_name  example.com;
        return       301 https://$server_name$request_uri;
    }

    server {
        listen       443 ssl;
        server_name  example.com;

        ssl_certificate      /etc/ssl/certs/nginx-selfsigned.crt;
        ssl_certificate_key  /etc/ssl/private/nginx-selfsigned.key;

        location / {
            index  index.html index.htm;
        }
    }
}

这个配置中定义了两个服务器块,分别对应 HTTP 和 HTTPS 请求。HTTP 请求会被重定向到 HTTPS,HTTPS 请求需要配置 SSL 证书和密钥。

重载 Nginx 配置
在修改 Nginx 配置文件后,需要重载配置文件,使得新的配置生效。可以使用以下命令来重载 Nginx 配置:

sudo nginx -s reload

其他配置
除了上述配置之外,Nginx 还支持其他的高级配置,比如反向代理、负载均衡、缓存等。可以参考官方文档或其他教程进行配置,同时也可以关注本站,后期将会持续更新相关文章。

0

打赏

评论 (0)

取消