Nginx03-動態資源和LNMP介紹與實驗、自動索引模塊、基礎認證模塊、狀態模塊

目錄

  • 寫在前面
  • Nginx03
    • 案例1 模擬視頻下載網站
      • 自動索引autoindex
      • 基礎認證auth_basic模塊
      • 狀態stub_status模塊
      • 模塊小結
    • 案例2 動態網站(部署php代碼)
      • 概述
      • 常見的動態網站的架構
      • LNMP
        • 架構流程
        • 數據庫Mariadb
          • 安裝
          • 安全配置
          • 基本操作
        • PHP
          • 安裝php
          • 修改配置文件
        • Nginx+Wordpress
          • 編輯Nginx
          • 安裝wordpress
          • 訪問主頁

寫在前面

這是Nginx第三篇,內容為Nginx自動索引模塊、基礎認證模塊、狀態模塊、動態資源介紹、LNMP介紹與實驗等。
上篇筆記 Nginx02-Nginx虛擬主機介紹、日志介紹、Location規則介紹

Nginx03

案例1 模擬視頻下載網站

需求:

  1. 瀏覽器打開,顯示目錄結構(autoindex模塊)
  2. 部分文件夾需登錄認證功能(auth_basic模塊)
  3. 統計nginx服務,訪問狀態(stub_status模塊)
  4. 域名:v.test.com,目錄:/app/code/v

ngx模塊是眾多ngx指令的集合.

自動索引autoindex

首頁不存在時,會使用autoindex模塊

  • autoindex on: 開啟目錄索引功能(顯示站點目錄下的文件的列表,首頁文件不存在.)
  • autoindex_localtime on: 顯示本地時間.
  • autoindex_exact_size off:是否顯示精確的文件的大小. off表示以人類可讀形式顯示大小

實現瀏覽器打開,顯示目錄結構(文件模擬即可)
在這里插入圖片描述

# 設置子配置文件
[root@front conf.d]# cat v.test.com.conf
server {listen 80;server_name v.test.com;root /app/code/v;error_log /var/log/nginx/v.test.com-error.log notice;access_log /var/log/nginx/v.test.com-access.log main;autoindex on;  #開啟目錄索引功能(首頁文件不存在時,顯示站點目錄下的文件的列表)charset utf8; # 中文字符autoindex_localtime on; # 系統本地時間autoindex_exact_size off; # 人類可讀的大小顯示location / {index index.html;}
}# 新建目錄
[root@front conf.d]# mkdir -p /app/code/v
[root@front conf.d]# touch /app/code/v/test{1..10}.mp4# 檢查語法并重啟服務
[root@front conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@front conf.d]# systemctl reload nginx

基礎認證auth_basic模塊

nginx中最基礎的認證模塊

  • auth_basic “請輸入密碼:”; #輸出提示,根據不同瀏覽器,可能不顯示.
  • auth_basic_user_file conf/htpasswd; #指定用戶名,密碼文件

登錄認證
登陸的用戶有auth目錄,需要登錄才能訪問,直接退出會401報錯
在這里插入圖片描述
在這里插入圖片描述

# 修改子配置文件
[root@front conf.d]# cat v.test.com.conf
server {listen 80;server_name v.test.com;root /app/code/v;error_log /var/log/nginx/v.test.com-error.log notice;access_log /var/log/nginx/v.test.com-access.log main;autoindex on;charset utf8;autoindex_localtime on;autoindex_exact_size off;location / {index index.html;}location /auth/ { # 新增locationauth_basic "提示-請輸入密碼:"; #認證提示auth_basic_user_file /etc/nginx/user; #認證密碼文件路徑}
}# 新建目錄
[root@front conf.d]# mkdir -p /app/code/v/auth/
[root@front conf.d]# touch /app/code/v/auth/auth{1..5}.mp5# 新建密碼文件
## 安裝httpd-tools,需要用到htpasswd工具
[root@front conf.d]# yum install -y httpd-tools## 創建加密的密碼文件并新增用戶
[root@front conf.d]# htpasswd -bc /etc/nginx/user test test #-b不使用交互模式,-c新增一個密碼文件(若有內容會清空)
Adding password for user test
[root@front conf.d]# htpasswd -b /etc/nginx/user tassel tassel
Adding password for user tassel
[root@front conf.d]# cat /etc/nginx/user
test:$apr1$DYOgLaoY$GKNgriUjduo/r7s5ous4v.
tassel:$apr1$iQF6rDr0$.Pwe8qmNOi6jxUMD4deI4.## 修改權限
[root@front conf.d]# chmod 600 /etc/nginx/user
[root@front conf.d]# chown nginx.nginx /etc/nginx/user# 語法檢查并重啟
[root@front conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@front conf.d]# systemctl reload nginx

狀態stub_status模塊

顯示nginx當前狀態,信息。顯示nginx服務的狀態,用戶訪問的狀態.
stub_status; #顯示nginx
在這里插入圖片描述

# 編寫子配置文件
[root@front conf.d]# cat v.test.com.conf
server {listen 80;server_name v.test.com;root /app/code/v;error_log /var/log/nginx/v.test.com-error.log notice;access_log /var/log/nginx/v.test.com-access.log main;autoindex on;charset utf8;autoindex_localtime on;autoindex_exact_size off;location / {index index.html;}location /auth/ {auth_basic "提示-請輸入密碼:";auth_basic_user_file /etc/nginx/user;}location /status/ { # 新增此部分,注意,此部分是uri,而不是一個文件夾,所以可以不用新建該路徑文件夾stub_status; #啟用統計功能,注意,顯示所有站點,而非僅當前虛擬主機}
}# 語法檢查并重啟
[root@front conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@front conf.d]# systemctl reload nginx# 內容解析
## 壓測
[root@front conf.d]# ab -n 999999 -c 3 -H Host:v.test.com http://192.168.100.148/
# ab是Apache Bench的縮寫,它是一個用于測試Web服務器性能的工具。ab可以發送多個HTTP請求到服務器,并報告服務器的響應時間、傳輸速度等性能指標。命令行中的參數含義如下:
# -n 999999:指定總共發送的請求次數為999999次。
# -c 3:指定并發連接數為3,即同時有3個請求發送到服務器。
# -H Host:v.test.com:添加一個HTTP請求頭,設置Host頭的值為v.test.com。這通常用于測試虛擬主機的性能,或者當服務器根據Host頭來處理請求時。
# http://192.168.100.148/:指定要測試的服務器的URL。這里是一個本地網絡中的IP地址,表示ab將向該地址發送請求。## status下內容
Active connections: 3 
server accepts handled requests61576 61576 61579 
Reading: 0 Writing: 1 Waiting: 2 
# Active connections: 當前活動狀態的連接數。這是當前Nginx正在處理的連接數量,包括正在讀取請求、正在寫入響應或正在等待客戶端發送下一個請求的連接。
# server accepts handled requests下的三個參數:
#  accepts: 總共接受的連接數。這是自從Nginx啟動以來接受的連接總數。
#  handled: 總共處理的連接數。通常這個數字和accepts相同,因為Nginx能夠處理所有接受的連接。
#  requests: 總共處理的請求數。這是自從Nginx啟動以來處理的總請求數量。這個數字可能會比accepts大,因為同一個連接可能會發送多個請求(例如,在一個Keep-Alive連接中)。
# Reading: 當前正在讀取請求頭的連接數。這是Nginx正在從客戶端讀取請求頭的連接數量。
# Writing: 當前正在寫入響應的連接數。這是Nginx正在向客戶端發送響應的連接數量。
# Waiting: 當前等待請求的空閑連接數。這是打開著但是目前沒有讀取或寫入活動的連接數量。這些連接可能處于Keep-Alive狀態,等待客戶端發送下一個請求。
  • 狀態模塊中的指標:
指標說明
Active connections當前已經建立的連接數(est)和等待數量,體現Nginx并發能力
server accepts已經接收到客戶端的連接總數
handled服務端已經處理的連接
requests客戶端發出請求的總數
reading正在讀取的請求頭連接數量
writing正在進行的響應的連接數量
waiting排隊數量,反映排隊情況

模塊小結

  • nginx模塊就是nginx指令的集合
模塊模塊中的核心指令
目錄索引模塊autoindex on;
認證功能模塊auth_basic_user_file;
訪問控制模塊allow,deny
狀態模塊stub_status
nginx 核心模塊root,location,error_log,server_name,listen
nginx 日志模塊access_log,log_format,error_log

案例2 動態網站(部署php代碼)

概述

網站架構說明與特點性能1句話說明
靜態網站網站僅僅包含HTML、CSS樣式、JS腳本、圖片、視頻等靜態資源。只需要web服務器即可:nginx,可以承受較高的訪問量。不支持動態的功能,如注冊、評論,功能單一。瀏覽器端解析(客戶端解析),服務端僅僅負責發送.
動態網站動態網站一般是通過開發語言實現:Java、PHP、Python、Golang等。動態資源頁面需要服務器進行處理:nginx+php/tomcat+數據庫。一般動態請求需要服務端進行處理與解析,把結果給用戶.
  • 區分靜態/動態資源:
  • url中包含&?一般都是動態資源

常見的動態網站的架構

L: Linux, N: Nginx, M: Mysql, A: Apache, W: Windows

  • PHP:LNMP(LEMP), LAMP, WNMP/WAMP
  • Java: LNMT(Tomcat,Jetty,Weblogic,Jboss)
  • Python: LNMP(Python,uwsgi)
  • Golang: LNMG(Golang)
  • C/C++

LNMP

架構流程
  • 用戶通過http協議發送請求
  • Nginx分流動/靜態資源,靜態自己處理,動態請求丟給PHP
    - Nginx通過fastcgi協議把動態請求丟給PHP
    - PHP處理動態請求,若需要數據,則連接數據庫Mysql
數據庫Mariadb
安裝
yum install -y mariadb-server
# mariadb-server 服務端
# mariadb 客戶端systemctl start mariadb
systemctl enable mariadb# 驗證
[root@db01 ~]# ss -tunlp | grep mysql
tcp   LISTEN 0      80                 *:3306            *:*    users:(("mysqld",pid=14433,fd=21))
[root@db01 ~]# ps -ef | grep mysql
mysql      14433       1  0 20:35 ?        00:00:00 /usr/libexec/mysqld --basedir=/usr
root       14974   14928  0 20:39 pts/0    00:00:00 grep --color=auto mysql
安全配置
mysql_secure_installation  #僅僅剛安裝的時候運行.僅首次運行即可.
#用于設置root密碼,清理用戶和清理臨時庫.Enter current password for root (enter for none): #回車即可
OK, successfully used password, moving on...Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.You already have a root password set, so you can safely answer 'n'.Change the root password? [Y/n] y #輸入y
New password: #輸入密碼
Re-enter new password: #再次輸入密碼
Password updated successfully!
Reloading privilege tables..... Success!Remove anonymous users? [Y/n] y #y刪除數據庫中的匿名用戶... Success!Disallow root login remotely? [Y/n] y #y禁止root遠程登陸... Success!Remove test database and access to it? [Y/n] y #y刪除test測試用數據庫Reload privilege tables now? [Y/n] y #y更新權限信息表... Success!
基本操作
  • 進入數據庫
mysql -uroot -p密碼 [-h IP]
#不要有空格,也可以不輸入密碼,等交互式時輸入

數據庫基本概念請自行了解,庫->表->字段(屬性/投影/列)->記錄(元組/行)

  • 查看
# 查看數據庫
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.001 sec)# 查看表
MariaDB [(none)]> show tables from mysql;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| column_stats              |
| columns_priv              |
| db                        |
| event                     |
...#查看某些字段(列),篩選記錄(行)
## 篩選mysql數據庫中user表的user和host列的記錄
## -G行的內容以列顯示
MariaDB [(none)]> select user,host from mysql.user ;
+------+-----------+
| user | host      |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1       |
| root | localhost |
+------+-----------+
3 rows in set (0.000 sec)
  • 創建
# 創建數據庫
MariaDB [(none)]> create database test;
Query OK, 1 row affected (0.000 sec)MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.001 sec)# 創建用戶,進行授權
MariaDB [(none)]> grant all on test.* to 'test'@'%' identified by 'test';
Query OK, 0 rows affected (0.000 sec)
## grant 權限 on 數據庫.表 to '用戶'@'登錄白名單' identified by '密碼';
## 一般localhost表示只能在數據庫本地使用.
## 可以通過192.168.100.% 進行授權局域網訪問. 其他局域網機器可以訪問數據庫.
## 只給個 % 表示所有人可以訪問(不安全). %不包含localhost.
### ALL: 所有可用的權限
### CREATE: 創建庫、表和索引
### LOCK_TABLES: 鎖定表
### ALTER: 修改表
### DELETE: 刪除表
### UPDATE: 更新數據
### INSERT: 插入表或列
### SELECT: 檢索表或列的數據
### CREATE_VIEW: 創建視圖
### SHOW_DATABASES: 列出數據庫
### DROP: 刪除庫、表和視圖
  • 刪除
# 刪除數據庫
MariaDB [(none)]> drop database test;
Query OK, 0 rows affected (0.001 sec)MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.000 sec)# 刪除用戶(revoke刪除授權)
MariaDB [(none)]> drop user 'test'@'%';
Query OK, 0 rows affected (0.001 sec)MariaDB [(none)]> select user,host from mysql.user;
+------+-----------+
| user | host      |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1       |
| root | localhost |
+------+-----------+
3 rows in set (0.001 sec)
PHP

選擇php 7.x

安裝php
# 安裝php
## 若是centos7,可以輸入以下yum源和安裝命令
[root@front conf.d]# cat /etc/yum.repos.d/php.repo
[webtatic-php]
name = php Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64
enabled = 1
gpgcheck = 0[root@front conf.d]# yum install -y php72w php72w-cli php72w-common  php72w-devel php72w-embedded php72w-gd php72w-mcrypt  php72w-mbstring php72w-pdo php72w-xml php72w-fpm  php72w-mysqlnd php72w-opcache php72w-pecl-memcached  php72w-pecl-redis php72w-pecl-mongodb## centos8可以直接使用默認的yum源安裝
[root@front conf.d]# yum install -y php*
[root@front conf.d]# php -v
PHP 7.2.24 (cli) (built: Oct 22 2019 08:28:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologieswith Zend OPcache v7.2.24, Copyright (c) 1999-2018, by Zend Technologies# 啟動php
[root@front conf.d]# systemctl enable php-fpm --now
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
修改配置文件

php默認使用的時apache,但要求用nginx,所以修改配置文件,使其使用nginx
yum安裝的php,默認listen監聽的是socket,要修改成127.0.0.1:9000

[root@front conf.d]# egrep -n "^user|^group" /etc/php-fpm.d/www.conf
24:user = apache
26:group = apache
[root@front conf.d]# egrep -n "^listen" /etc/php-fpm.d/www.conf
38:listen = /run/php-fpm/www.sock# 修改配置文件
[root@front conf.d]# sed -i 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf
[root@front conf.d]# sed -i 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
[root@front conf.d]# egrep -n "^user|^group" /etc/php-fpm.d/www.conf
24:user = nginx
26:group = nginx[root@front conf.d]# sed -i 's/listen = /run/php-fpm/www.sock/listen = 127.0.0.1:9000/g' /etc/php-fpm.d/www.conf
sed: -e expression #1, char 18: unknown option to `s'
[root@front conf.d]# sed -i 's|listen = /run/php-fpm/www.sock|listen = 127.0.0.1:9000|g' /etc/php-fpm.d/www.conf
[root@front conf.d]# egrep -n "^listen" /etc/php-fpm.d/www.conf
38:listen = 127.0.0.1:9000
Nginx+Wordpress
編輯Nginx
# 編寫子配置文件
[root@front conf.d]# cat blog.test.com.conf
server {listen 80;server_name blog.test.com;root /app/code/blog;error_log /var/log/nginx/blog.test.com-error.log notice;access_log /var/log/nginx/blog.test.com-access.log main;location / {index index.php;}location ~* \.php$ {# foward to phpfastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;# 修改以下fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
}# 
安裝wordpress

官方下載鏈接:https://wordpress.org/download/releases/#branch-61
我選用的是6.1.1

# 解壓并移動到對應站點目錄
unzip wordpress-6.1.1.zip
mv wordpress/* /app/code/blog/# 修改權限
[root@front conf.d]# chown -R nginx.nginx /app/code/blog
訪問主頁

在這里插入圖片描述
在這里插入圖片描述
wordpress的教程網上特別多,這里不贅述,只是作為動態資源的演示

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/24173.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/24173.shtml
英文地址,請注明出處:http://en.pswp.cn/web/24173.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AI做的2024年高考數學試卷,答案對嗎?

2024年高考數學考試已經結束,現在呈上數學真題及AI給出的解答。供各位看官欣賞。 總的來說,人工做題兩小時,AI解答兩分鐘。 但是,AI做的答案是否正確,那就要各位看官來評判了! 注:試卷來源于…

【Linux】另一種基于rpm安裝yum的方式

之前的163的鏡像源504網關異常了,網上找到的方法基本都是基于apt,或是基于apt-get。找到了大佬幫忙裝了一下,記錄如下: wget https://vault.centos.org/7.9.2009/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm…

2024年5大制作AI電子手冊工具推薦

AI電子手冊作為一種結合了人工智能技術和傳統電子手冊功能的新型工具,逐漸成為了企業進行知識管理和信息傳遞的重要工具,為企業提高效率、優化用戶體驗。在本文中,LookLook同學將簡單介紹一下什么是AI電子手冊、對企業有什么好處,…

JAVA面試中,面試官最愛問的問題。

Optional類是什么?它在Java中的用途是什么? Java中的Optional類是一個容器類,它用于封裝可能為空的對象。在Java 8之前,空值檢查是Java編程中一個常見的問題,尤其是在處理返回單個值的方法時。Optional類提供了一種更…

電源變壓器的作用和性能

電源變壓器的主要作用是改變輸入電壓的大小,通常用于降低電壓或升高電壓,以便適應不同設備的需求。它們還可以提供隔離,使得輸出電路與輸入電路之間電氣隔離,從而提高安全性。性能方面,電源變壓器需要具有高效率、低溫…

Unity3D測量距離實現方法(一)

系列文章目錄 unity工具 文章目錄 系列文章目錄👉前言👉一、Unity距離測量1-1 制作預制體1-2 編寫測量的腳本 👉二、鼠標點擊模型進行測量👉二、字體面向攝像機的方法👉二、最短距離測量方法👉三、壁紙分享…

Python中的裝飾器鏈(decorator chain)是什么

在Python中,裝飾器是一種高級功能,它允許你在不修改函數或類代碼的情況下,為它們添加額外的功能。裝飾器通常用于日志記錄、性能測量、權限檢查等場景。當多個裝飾器應用于同一個函數或類時,它們會形成一個裝飾器鏈(de…

Go語言中,公司gitlab私有倉庫依賴拉取配置

為什么要考慮私有倉庫 Go語言目前都已經采用了官方統一的 go modules 來管理依賴,后續也不太可能出現比較亂的生態, 因此了解下如何讓這個依賴管理正常工作是非常必要的。 對于Github或者其他公有倉庫,依賴管理是非常直接和方便的,設置好GO…

C++ 依賴的C庫查看和下載

依賴庫查詢:ldd 指令 # ldd libcyber.solinux-vdso.so.1 (0x0000ffff86b52000)libopt_proto.so > /home/caros/cyberrt/lib/libopt_proto.so (0x0000ffff84c4a000)libboost_filesystem.so.1.73.0 > /opt/orin/usr/local/lib/libboost_filesystem.so.1.73.0 (…

Java版工程項目管理平臺:以源碼驅動,引領工程企業數字化轉型

在當今數字化時代,隨著企業的擴張和業務的增長,傳統的工程項目管理方法已顯不足。為了提升管理效率、減輕工作負擔、增強信息處理的快速性和精確度,工程企業亟需借助數字化技術進行轉型升級。本文將向您展示一款基于Spring Cloud、Spring Boo…

SS2D反向傳播問題記錄【未解決】

使用SS2D寫了一個簡單的神經網絡進行訓練,但是訓練報錯: NotImplementedError: You must implement either the backward or vjp method for your custom autograd.Function to use it with backward mode AD. 環境: CUDA11.8 torch2.0.0 mam…

AI大模型日報#0607:10家國產大模型、GPT-4o挑戰高考作文 | OpenAI公開破解GPT-4新方法

導讀:AI大模型日報,爬蟲LLM自動生成,一文覽盡每日AI大模型要點資訊!目前采用“文心一言”(ERNIE 4.0)、“零一萬物”(Yi-Large)生成了今日要點以及每條資訊的摘要。歡迎閱讀&#xf…

TS 系列:使用元祖生成聯合類型

需求:有這么個需求,我們有兩個數組,一個記錄撲克牌花色,一個記錄撲克牌點數,需要有一個函數,傳遞兩個值,根據傳遞的值生成撲克牌,需要我們定義參數的類型檢查。 思路:肯…

2024速通python之python高階技巧

文章目錄 一、閉包1.什么是閉包2.優缺點3.nonlocal關鍵字 二、裝飾器1.什么是裝飾器2.舉例3.傳統方式4.裝飾器方式5.語法糖寫法 三、多線程1.線程參數2.多線程編程 四、網絡編程1.Socket服務端編程2.Socket客戶端編程 「章節總覽」 ??????【2024速通python之python基礎…

超過20W個高質量組件的開源PCB庫

項目介紹 Celestial Altium Library是由Altium行業專家Mark Harris創建的一個龐大的免費開源數據庫庫,專為Altium Designer而設計,庫中包含超過20萬個優質組件 . 特點 高質量數據:Celestial Altium Library注重數據的質量,用戶可…

Day14:響應式網頁

通過媒體查詢、Bootstrap 框架完成騰訊全端網頁響應式布局。 一、響應式布局方案 1、什么是響應式布局 它的主要特點是能夠使網頁根據不同的設備屏幕尺寸(如桌面電腦、平板電腦、手機等)和分辨率自動調整布局和顯示效果,以提供最佳的用戶體…

python的plt.axis()、plt.xlim() 和 plt.ylim()函數

坐標軸相關設置1、plt.axis():坐標軸設置 函數 plt.axis(*v, **kwargs) 主要用于設置坐標軸的屬性,返回值為當前的坐標軸范圍 [xmin, xmax, ymin, ymax],幾種調用方式如下: 調用方式 說明 axis() 返回當前的坐標軸范圍 [xmin, xmax, ymi…

pytorch構建模型訓練數據集

pytorch構建模型訓練數據集 pytorch構建模型訓練數據集1.AlexNet:1.1.導入必要的庫:1.2.數據預處理和增強:1.3.加載數據集:1.4.劃分測試集和訓練集:1.5.創建數據加載器:1.6.加載AlexNet模型:1.7.修改模型以…

qt qDebug兼容LOGE

目錄 普通qDebug用法 qt qDebug兼容LOGE 模板參數2實現 qDebug 實現LOGE一樣的用法,這樣Android和qt同時支持LOGE打印日志 普通qDebug用法 #include <QApplication> #include <QDebug>int main(int argc, char *argv[]) {QApplication app(argc, argv);int ret…

帝國cms接入騰訊云人臉識別認證代碼

利用帝國cms在做一些會員系統的時候&#xff0c;需要做人臉識別認證&#xff0c;之前接入了某api接口&#xff0c;發現身份證識別率真的低&#xff0c;還好充值的少&#xff0c;否則要出問題&#xff0c;后來發現會員注冊率降低了不少&#xff0c;最終還是決定使用騰訊云的人臉…