当前位置: 首页 > article >正文

Nginx搭建Web网站

部署Nginx

[root@server ~]# setenforce  0           
​
[root@server ~]# systemctl stop  firewalld
​
[root@server ~]# systemctl disable  firewalld
​
[root@server ~]# yum  install  nginx  -y
​
[root@server ~]# nginx  -V  # 查看版本,编译器、配置参数等信息
​
[root@server ~]# systemctl start  nginx   # 启动httpd
​
[root@server ~]# systemctl enable  nginx  # 设置开机启动
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.
​
[root@server ~]# systemctl status  nginx    # 查看状态,q键退出查看
​
[root@server ~]# ps  -ef  |  grep  nginx  # 查看进程
root        1690       1  0 13:57 ?        00:00:00 nginx: master process /usr/sbin/nginx
nginx       1691    1690  0 13:57 ?        00:00:00 nginx: worker process
nginx       1692    1690  0 13:57 ?        00:00:00 nginx: worker process
root        1726    1510  0 14:00 pts/0    00:00:00 grep --color=auto nginx
​
# 测试,Windows中打开浏览器输入服务器IP地址

常用命令

systemctl系列
systemctl  start  nginx   # 启动服务
​
systemcctl restart  nginx  # 重启服务
​
systemctl  enable  nginx   # 开机启动
​
systemctl  stop  nginx     # 停止服务
​
systemctl  disable  nginx  # 取消开机启动
​
systemctl  status   nginx  # 查看状态
nginx自带命令
nginx    # 启动nginx
​
nginx   restart  # 重启服务
​
nginx  -s  reload  # 重新加载配置文件
​
nginx  -s  stop    # 强行停止服务
​
nginx  -s  quit    # 优雅停止服务,即所有请求处理完后退出服务
​
nginx  -v         # 查看版本号
​
nginx -t         # 检查配置文件的语法错误,无错返回ok

nginx配置文件

[root@server ~]# cd  /etc/nginx     # 服务目录
[root@server nginx]# yum  install  tree  -y
[root@server nginx]# tree
.
├── conf.d                 # 子配置文件目录
├── default.d           
├── fastcgi.conf
├── fastcgi.conf.default
├── fastcgi_params
├── fastcgi_params.default
├── koi-utf               #  KOI8-R 编码(俄语)转换的映射文件
├── koi-win               # #  KOI8-R 编码(俄语)转换的映射文件
├── mime.types             # 配置支持的媒体类型
├── mime.types.default     # 样例文件
├── nginx.conf             # 主配置文件
├── nginx.conf.default     # 样例文件
├── scgi_params            
├── scgi_params.default
├── uwsgi_params
├── uwsgi_params.default
└── win-utf                #  KOI8-R 编码(俄语)转换的映射文件
​
2 directories, 15 files
​
网页默认目录:/usr/share/nginx/html
访问日志:/var/log/nginx/access.log
错误日志:/var/log/nginx/error.log

主配置文件

[root@server ~]# vim  /etc/nginx/nginx.conf
  • 配置分析

# main配置段(全局配置)
user nginx;              # 运行的账户,默认即是nginx,可以不进行设置
worker_processes auto;   # worker进程数,根据硬件调整,通常等于CPU数量或者2倍于CPU
error_log /var/log/nginx/error.log;   # 错误日志存放目录
pid /run/nginx.pid;     # 指定运行Nginx master主进程的pid文件存放路径
​
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;  #  导入的外部文件位置
​
​
# events配置段,性能模块设置,其中可以设置时间处理模式等
events {     
         use epoll;     # 使用epoll事件驱动模型,但不推荐配置它,让nginx自己选择
         worker_connections 1024;   # 每个进程的最大连接数量(并发数)
         accept_mutex on # 默认是off关闭的,这里推荐打开
}
​
# http配置段,包含全局块和server块,使用最频繁的部分,代理、缓存、日志定义等绝大多数功能和第三方模块的配置都在这里设置
http {  
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
        # 以上定义日志格式
    access_log  /var/log/nginx/access.log  main;   # 访问日志存储位置
​
    sendfile            on;   # 高效文件传输模式,默认开启
    tcp_nopush          on;   # 性能优化参数,数据是否立刻发送
    tcp_nodelay         on;   # 性能优化参数,小数据包是否延迟发送
    keepalive_timeout   65;   # 超时时间
    types_hash_max_size 4096; # 性能优化参数,影响散列表的冲率
​
    include             /etc/nginx/mime.types;      # 可解析的静态资源类型
    default_type        application/octet-stream;   # 默认文件类型
​
    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;   # 加载子配置项
    # server配置段,虚拟主机设置
    server {  
        listen       80;        # 监听IPV4端口
        listen       [::]:80;   # 监听IPV6端口
        server_name  _;         # 访问的域名
        root         /usr/share/nginx/html;    # 网页默认目录
​
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;   # 子配置文件存储路径
        
        # location配置段,一般用来匹配不同的URI请求
        location / {
            root   /usr/share/nginx/html;     # 相对路径网站根目录
            alias  /usr/share/nginx/html/;    # 绝对路径网站根目录
            index  index.html index.htm;      # 默认首页文件
            deny 172.168.22.11;       # 禁止访问的ip地址,可以为all
            allow 172.168.33.44;     # 允许访问的ip地址,可以为all
            autoindex  on;           # 开启目录文件列表
            autoindex_exact_size on;   # 显示出文件的确切大小,单位是bytes
            autoindex_localtime on;    # 显示的文件时间为文件的服务器时间
            charset utf-8,gbk;         # 避免中文乱码
            auth_basic "xxxx";   # 加密网页验证时的提示信息
            auth_basic_user_file   /路径/文件名;   # 加密网页使用的密码验证文件
            }
        error_page 404 /404.html;        # 404时返回给客户端的页面
            location = /40x.html {
        }
​
        error_page 500 502 503 504 /50x.html;  # 50x错误返回给客户端的页面
           location = /50x.html {
        }
    }
​
# Settings for a TLS enabled server.   # https虚拟主机定义
#
#    server {
#        listen       443 ssl http2;    # 监听的IPV4端口
#        listen       [::]:443 ssl http2; 
#        server_name  _;
#        root         /usr/share/nginx/html;   # 网页默认目录
#
#        ssl_certificate "/etc/pki/nginx/server.crt";   # 证书存储路径
#        ssl_certificate_key "/etc/pki/nginx/private/server.key"; # 密钥存储
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers PROFILE=SYSTEM;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }
​
}
​
  • 快速搭建网站

[root@server ~]# yum  install  nginx  -y
​
echo  "welcome to  www.openlab.com"  >  /usr/share/nginx/html/index.html      # 写入网页数据
​
[root@server ~]# systemctl  restart  nginx
​
# 打开windows中打开火狐浏览器输入主机IP测试

image-20230531102450777

# 或者推过curl命令查看网站的网页数据,验证网站是否能访问
[root@server ~]# curl  127.0.0.1
welcome to  www.openlab.com

http://www.kler.cn/a/463588.html

相关文章:

  • 简易Type-C拉取5V/3A电流电路分享
  • 【LC】191. 位1的个数
  • Formality:官方Tutorial(一)
  • Scrum中敏捷项目经理(Scrum Master)扮演什么角色?
  • mysql 死锁案例及简略分析
  • 供需平台信息发布付费查看小程序系统开发方案
  • 玩转树莓派Pico(21): 迷你气象站7——软件整合改进2
  • 基于SSM(Spring + Spring MVC + MyBatis)框架的旅游资源网站
  • git reset --hard(重置到当前提交,所有未提交的更改都会被永久丢弃)
  • ubuntu中zlib安装的步骤是什么
  • 运维人员的Go语言学习路线
  • 初学stm32---高级定时器输出n个pwm波
  • 无人机无法返航紧急处理方式!
  • Redis - 1 ( 11000 字 Redis 入门级教程 )
  • Linux性能优化-网络篇-NAT详解
  • 基于Docker+模拟器的Appium自动化测试(二)
  • 如何使用网络工具进行网络性能评估
  • 【Rust自学】8.4. String类型 Pt.2:字节、标量值、字形簇以及字符串的各类操作
  • Android Opengl(三)绘制三角形
  • Python 数据可视化的完整指南
  • LLaMA详解
  • springboot520基于Spring Boot的民宿租赁系统的设计与实现(论文+源码)_kaic
  • 安卓入门四 Application Component
  • ubuntu2204 gpu 没接显示器,如何连接vnc
  • JnetPcap抓取数据包IP数据包
  • 3、redis的集群模式