npm Error EACCES permission denied
问题
基础环境
系统:Windows WSL
工具:NVM (Node Version Manager)
版本:node-v12.20.1、npm-6.14.10
全局安装工具包时抛错 npm ERR! Error: EACCES: permission denied
基础环境
系统:Windows WSL
工具:NVM (Node Version Manager)
版本:node-v12.20.1、npm-6.14.10
全局安装工具包时抛错 npm ERR! Error: EACCES: permission denied
NGINX 重写模块 ngx_http_rewrite_module
用于使用 PCRE正则表达式 更改请求URI,返回重定向,并有条件地选择配置。
主要的指令 break, if, return, rewrite, set
指令执行顺序:
如果URI发生重写,就会重新循环执行1-3,直到找到真实存在的文件。
如果循环超过10次,则返回 500 Internal Server Error 错误。
proxy_pass URL;
URL 由三部分组成:
示例
proxy_pass http://www.abc.com;
proxy_pass http://127.0.0.1:8000/uri/;
proxy_pass http://unix:/tmp/backend.socket:/uri/;
此外,可将地址指定为一个主机组 server group,使用 upstream 来定义主机组。
当使用 rewrite 在代理位置更改URI时(地址重写),则重写后的URI会传递给后端服务器。
location 指令用途
根据请求 URI 设置配置,进而对请求做不同的处理和响应。
# 关键字 修饰符 匹配的前缀字符既URI { 要执行的操作 }
location [ = | ~ | ~* | ^~ ] uri { ... }
location @name { ... }
语法规则很简单,关键字location后跟可选的修饰符,后面是要匹配的前缀字符既URI,花括号中是要执行的操作。
location 一般定义在 server 区块中,也可以嵌套定义在 location 区块中,但命名 location 不可嵌套。
首先,要有一个域名,且使用 阿里云DNS 提供解析服务。
其次,要在阿里云 https://ram.console.aliyun.com/ 创建一个子账号并配置 RAM 权限AliyunDNSFullAccess
,并为子账号生成AccessKey
用于通过API管理DNS解析。
迭代是Python最强大的功能之一,是访问集合元素的一种方式。
只要是可迭代对象(Iterable),就可以通过for循环来遍历,这种遍历我们称为迭代。
也就是说所有可作用于for循环的对象都是可迭代对象(Iterable)。
那么,如何判断一个对象是可迭代对象呢?方法是通过collections模块的Iterable类型判断:
>>> from collections import Iterable
>>> isinstance(123,Iterable) # Integer 不可迭代
False
>>> isinstance('abc',Iterable) # String 可迭代
True
>>> isinstance([1,2,3],Iterable) # List 可迭代
True
>>> isinstance(('a','b','c'),Iterable) # Tuple 可迭代
True
>>> isinstance({'name':'Arno','Job':'Ops'},Iterable) # Dictionary 可迭代
True
基础源
# Centos
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# epel
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
建议安装启用epel
源,采用yum
的方式安装openvpn
。
yum install -y epel-release
yum update -y
yum install -y openssl lzo pam openssl-devel lzo-devel pam-devel
yum install -y easy-rsa
yum install -y openvpn