Nginx安装

大部分来源学习课程 慕课网 java架构师

安装Nginx

去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本

 

上传nginx到linux系统

 

安装依赖环境

 

(1)安装gcc环境

输入: yum install gcc-c++

(2)安装PCRE库,用于解析正则表达式

输入:yum install -y pcre pcre-devel

(3)zlib压缩和解压缩依赖,

输入:yum install -y zlib zlib-devel

(4)SSL 安全的加密的套接字协议层,用于HTTP安全传输,也就是https

输入:yum install -y openssl openssl-devel

解压,需要注意,解压后得到的是源码,源码需要编译后才能安装

输入:tar -zxvf nginx-1.16.1.tar.gz

编译之前,先创建nginx临时目录,如果不创建,在启动nginx的过程中会报错

输入:mkdir /var/temp/nginx -p

在nginx目录,输入如下命令进行配置,目的是为了创建makefile文件

输入:

./configure \

--prefix=/usr/local/nginx \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--error-log-path=/var/log/nginx/error.log \

--http-log-path=/var/log/nginx/access.log \

--with-http_gzip_static_module \

--http-client-body-temp-path=/var/temp/nginx/client \

--http-proxy-temp-path=/var/temp/nginx/proxy \

--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \

--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \

--http-scgi-temp-path=/var/temp/nginx/scgi

 

 

注: 代表在命令行中换行,用于提高可读性

 

配置命令:

 

命令 解释

–prefix 指定nginx安装目录

–pid-path 指向nginx的pid

–lock-path 锁定安装文件,防止被恶意篡改或误操作

–error-log 错误日志

–http-log-path http日志

–with-http_gzip_static_module 启用gzip模块,在线实时压缩输出数据流

–http-client-body-temp-path 设定客户端请求的临时目录

–http-proxy-temp-path 设定http代理临时目录

–http-fastcgi-temp-path 设定fastcgi临时目录

–http-uwsgi-temp-path 设定uwsgi临时目录

–http-scgi-temp-path 设定scgi临时目录

 

 

make编译

输入: make

安装

输入: make install

进入sbin目录启动nginx

输入:./nginx

停止:./nginx -s stop

重新加载:./nginx -s reload

打开浏览器,访问虚拟机所处内网ip即可打开nginx默认页面,显示如下便表示安装成功:

 

注意事项:

 

如果在云服务器安装,需要开启默认的nginx端口:80

如果在虚拟机安装,需要关闭防火墙

本地win或mac需要关闭防火墙

 

///

配置静态页面显示

cd .. 到 nginx页面 进入到 html

 

vim index.html

 

i 进入编写

:wq

查看进程

ps -ef| grep nginx

 

查看日志

../sbin/nginx -t

重启

../sbin/nginx -s reload

 

访问地址 http://106.54.31.74:80/

 

 

 

手动切割日志:

 

1 创建一个shell可执行文件:cut_my_log.sh,内容为

 

#!/bin/bash

LOG_PATH="/var/log/nginx/" #地址在的位子

RECORD_TIME=$(date -d "yesterday" +%Y-%m-%d+%H:%M) # 定义时间

PID=/var/run/nginx/nginx.pid

mv ${LOG_PATH}/access.log ${LOG_PATH}/access.${RECORD_TIME}.log

mv ${LOG_PATH}/error.log ${LOG_PATH}/error.${RECORD_TIME}.log

 

#向Nginx主进程发送信号,用于重新打开日志文件

kill -USR1 `cat $PID`

 

2 为cut_my_log.sh添加可执行的权限:

chmod +x cut_my_log.sh

3 测试日志切割后的结果:

./cut_my_log.sh

 

Nginx 日志切割-定时

 

使用定时任务

 

安装定时任务:

 

yum install crontabs

crontab -e 编辑并且添加一行新的任务:

 

*/1 * * * * /usr/local/nginx/sbin/cut_my_log.sh

重启定时任务:

 

service crond restart

附:常用定时任务命令:

 

service crond start //启动服务

service crond stop //关闭服务

service crond restart //重启服务

service crond reload //重新载入配置

crontab -e // 编辑任务

crontab -l // 查看任务列表

定时任务表达式:

 

Cron表达式是,分为5或6个域,每个域代表一个含义,如下所示:

 

分 时 日 月 星期几 年(可选)

取值范围 0-59 0-23 1-31 1-12 1-7 2019/2020/2021/…

常用表达式:

 

每分钟执行:

 

*/1 * * * *

每日凌晨(每天晚上23:59)执行:

 

59 23 * * *

每日凌晨1点执行:

 

0 1 * * *

 

 

搭建静态资源服务器

 

重启服务器

 

建文件 huey.conf

server{

listen 91;

server_name localhost;

location / {

root /home/;

index test.html;

}

 

}

1 先检测文件夹

../sbin/nginx -t

2 重新启动

../sbin/nginx -s reload

配置 文件启动到 nginx.conf

include huey.conf;

 

也需要重启

 

访问多个 继续访问图片

server{

listen 91;

server_name localhost;

location / {

root /home/;

index test.html;

}

location /imooc {

root /home ;

}

}

后续操作保存 重启 跟上面是一致的

 

另一种形式配置 别名

 

server{

listen 91;

server_name localhost;

location / {

root /home/;

index test.html;

}

### static 别名 随便取的

location /static {

root /home ;

alias /home/imooc

}

}

root 与 alias

假如服务器路径为:/home/imooc/files/img/face.png

 

root 路径完全匹配访问

配置的时候为:

 

location /imooc {

root /home

}

用户访问的时候请求为:url:port/imooc/files/img/face.png

 

alias 可以为你的路径做一个别名,对用户透明

配置的时候为:

 

location /hello {

alias /home/imooc

}

用户访问的时候请求为:url:port/hello/files/img/face.png,如此相当于为目录imooc做一个自定义的别名。

 

Gzip压缩提升请求速率

在 nginx.conf 有个 gzip 目的 :提高传输效率,节约带宽

 

#限制最小压缩,小于 1字节不压缩

gzip_min_length 1;

 

#定义压缩级别 文件越大,压缩越大,cup使用多

gzip_comp_level 3;

#定义压缩文件类型

gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png application/json ;

 

重新启动 nginx

 

location 的匹配规则解析

 

空格:默认匹配,普通匹配

location / {

root /home;

}

 

=:精确匹配

location = /imooc/img/face1.png {

root /home;

}

 

~*:匹配正则表达式,不区分大小写

#符合图片的显示

location ~ \.(GIF|jpg|png|jpeg) {

root /home;

}

 

~:匹配正则表达式,区分大小写

#GIF必须大写才能匹配到

location ~ \.(GIF|jpg|png|jpeg) {

root /home;

}

 

^~:以某个字符路径开头

location ^~ /imooc/img {

root /home;

}

 

Dns域名解析

 

 

 

 

 

nginx跨域配置支持

#允许跨域请求的域,*代表所有

add_header 'Access-Control-Allow-Origin' *;

#允许带上cookie请求

add_header 'Access-Control-Allow-Credentials' 'true';

#允许请求的方法,比如 GET/POST/PUT/DELETE

add_header 'Access-Control-Allow-Methods' *;

#允许请求的header

add_header 'Access-Control-Allow-Headers' *;

 

 

 

Nginx 防盗链配置支持

#对源站点验证

valid_referers *.imooc.com;

#非法引入会进入下方判断

if ($invalid_referer) {

return 404;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值