原创 xcrun: error: invalid active developer

將Mac升級到10.15.3後,git無法使用報錯:信息xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools) 解決方法:終端中操

原创 Nginx一些常用配置和技巧

以下相關配置爲工作中涉及到的,記錄下來,持續更新;一 nginx添加賬號密碼驗證htpasswd -c /etc/nginx/conf.d/***_monitor.pass wenxi //創建認證信息,wenxi爲認證用戶名二 不允許通過

原创 nginx中root和alias的區別

nginx配置文件中有個location如下: 準備了兩個index文件;第一個是在/var/www/html目錄中有個index.html,顯示內容爲:pwd: /var/www/html;alias /var/www/html/;第二

原创 linux定時任務頁面管理平臺jobx

本文章是轉載大神的作品,Linux定時任務平臺,挺好用,搭建部署方便,使用更方便;jobx分爲服務端和客戶端,agent實現了自動註冊;github原地址:https://github.com/jobxhub/JobX運行環境: 1 JDK

原创 python-裝飾器

裝飾器簡介:給被裝飾的函數在不更改代碼的基礎上增加新的功能;多個裝飾器的執行順序:從最靠近原始函數的裝飾器開始執行,最後執行原始函數; 直接上個簡單的例子就懂了: 一 最簡單的裝飾器:#!/usr/bin/python def deco(f

原创 python設置日誌信息

#!/usr/bin/env pythonimport sys, time, logging, commands '''Set log output parameters''' def setting_logger():timedate =

原创 useradd和adduser命令的區別

useradd與adduser都是創建新的用戶在CentOs下useradd與adduser是沒有區別的都是在創建用戶,在home下自動創建目錄,沒有設置密碼,需要使用passwd命令修改密碼。而在Ubuntu下useradd與adduse

原创 nginx主配置文件參數

參數備註http版本1.1(默認開啓長連接)user www-data; worker進程運行用戶爲www-data;worker_processes 16; nginx進程開啓後,16個worker進程處理請求;pid /run/ngin

原创 Nginx自定義請求頭字段

介紹在nginx中自定義請求頭字段,並在日誌中展示相關字段的值: 第一種方法: 1 在代理nginx服務器配置中增加兩個proxy_set_header字段,一個iden,一個age,分別賦值爲"student","21",我們將來在日誌中

原创 Linux中tail的相關用法

一Linux tail命令的用途是按照要求將指定的文件最後部分輸出到標準設備,通常是終端,就是將文件的最後幾行顯示到終端上,tail會自動刷新。二tail -f filename說明: 監視filename文件的尾部內容(默認10行,相當於

原创 nginx的11個http請求處理階段

nginx將一個HTTP請求分爲11個處理階段,這樣做讓每個HTTP模塊可以僅僅專注於完成一個獨立,簡單的功能。而一個請求的完整處理過程可以由多個HTTP模塊共同合作完成。可以極大的提高多個模塊合作的協同性,可測試性,可擴展性。換言之,ng

原创 生產環境中常見http狀態碼整理

200 - OK 服務器成功返回網頁; 301 - 永久重定向,搜索引擎在抓取新的內容的同時,將舊的網址替換爲重定向之後的網址; 302 - 臨時重定向,搜索引擎在抓取新的內容的同時,將舊的地址保留,容易引起URL劫持;403 - 禁止訪問

原创 nginx中301和302重定向之間的區別

首先客戶端瀏覽器的URL都會改變;302重定向是暫時的重定向,搜索引擎會抓取新的內容而保留舊的地址。因爲服務器返回302,所以搜索引擎會認爲新的網址是暫時的;301重定向是永久的重定向,搜索引擎會抓取新的內容的同時將舊的地址替換爲重定向後的

原创 nginx_location匹配規則說明以及匹配的優先級

Location匹配規則 語法規則: 【= | ^~ | ~ | ~* | / | /uri 】 location = /uri                 = 表示精確匹配,只有完全匹配上才能生效,若找到,停止搜索;  locatio

原创 python-裝飾器

裝飾器簡介:給被裝飾的函數在不更改代碼的基礎上增加新的功能;多個裝飾器的執行順序:從最靠近原始函數的裝飾器開始執行,最後執行原始函數; 直接上個簡單的例子就懂了: 一 最簡單的裝飾器:#!/usr/bin/python def deco(f