Nginx学习之路------初识OpenResty,nginxopenresty
Nginx学习之路------初识OpenResty,nginxopenresty
安装
直接官网下载,链接:https://openresty.org/cn/download.html
步骤
系统准备
系统为CentOS7,由于本机使用的是Mac,因此装了个CentOS7的虚拟机
虚拟机安装
使用VirtualBox,当然还需要一个系统文件,例如:CentOS-7.2-x86_64-Minimal-1511.iso,虚拟机安装完成后,可以启动时选择上述的系统文件。
SSH操作虚拟机
开启网络
如果想要本机使用SSH方式操作虚拟机,则需要以下步骤网络配置
1.进入/etc/sysconfig/network-scripts目录
2.vi ifcfg-enp0s3,将ONBOOT设置成yes,默认是no
配置可访问端口
启动OpenResty
解压
将下载的文件进行解压
tar -xzvf openresty-VERSION.tar.gz//VERSION为你下载的具体版本号
安装依赖包
yum -y install libuuid-devel
yum -y update
yum -y groupinstall "Development Tools"
yum -y install pcre-devel openssl-devel
参数配置初始化
./configure --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module
gmake && gmake install
ln -s /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx//超链nginx安装命令
nginx -v//验证nginx是否安装完成
nginx -V//查看编译时用了哪些moudle
Nginx配置
创建第一个Nginx配置
小伙伴们可以完全参照https://openresty.org/cn/getting-started.html文档。
创建所需的目录,可自定义
mkdir ~/work
cd ~/work
mkdir logs/ conf/
简单配置
worker_processes 1;//工作进程数
error_log logs/error.log;//错误日志输出目录
events {
worker_connections 1024;//工作线程允许连接数
}
http {
server {
listen 8080;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>hello, world8080</p>")
';
}
}
server {
listen 9090;
location / {
proxy_pass http://www.baidu.com;
#default_type text/html;
#content_by_lua '
# ngx.say("<p>hello, world9090</p>")
#';
}
}
}
启动Nginx
启动命令:
nginx -p `pwd` -c work/conf/nginx.conf
接下来就可以使用curl来做测试了:curl http://localhost:9090
增加对HTTPS的支持
安装OpenSSL
下载
可以直接访问http://www.openssl.org/source/openssl-1.0.2.tar.gz或在服务器上面执行如下命令:
wget http://www.openssl.org/source/openssl-1.0.2.tar.gz
安装
tar -xzvf openssl-1.0.2.tar.gz
生成证书
此处参照这位【糖薪砖】博主的博客,多谢!地址:http://blog.csdn.net/tangxinzhuan/article/details/53428870
1) 生成RSA私钥
openssl genrsa -des3 -out server.key 1024
2) 生成签名
openssl req -new -key server.key -out server.csr
3) 根据已生成的RSA私钥输出无加密的私钥
openssl rsa -in server.key -out server_nopass.key
4) 使用签名和私钥生成crt证书
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Nginx增加HTTPS的配置
server {
listen 443;
#server_name aaa.com;
ssl on;
ssl_certificate /data/openssl/openssl-1.0.2/server.crt;
ssl_certificate_key /data/openssl/openssl-1.0.2/server.key;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>hello, world443</p>")
';
}
配置可访问端口
增加对443的访问
重新执行<####参数配置初始化>
增加新参数:
./configure –with-openssl=/data/openssl/openssl-1.0.2
重启Nginx,接下来就可以在浏览器中键入以下网址做测试了:https://localhost:4443
补充说明
Nginx代理和反向代理
代理
内网->Nginx->外网
反向代理
外网->Nginx->内网
评论暂时关闭