文档章节

[学习笔记]ubuntu16.04编译安装nginx

Harrybao
 Harrybao
发布于 2018/07/22 20:03
字数 509
阅读 8
收藏 0

更新源

  • sudo apt update

安装需要的依赖

  • sudo apt install build-essential
  • sudo apt install libtool
  • sudo apt install libpcre3 libpcre3-dev
  • sudo apt install zlib1g-dev
  • sudo apt-get install openssl libssl-dev

下载nginx源码包

  • wget http://nginx.org/download/nginx-1.13.10.tar.gz
  • tar zxvf nginx-1.13.10.tar.gz
  • cd nginx-1.13.10
  • ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module
  • make
  • sudo make install

1.在系统服务目录里创建nginx.service文件

  • sudo vi /lib/systemd/system/nginx.service

[Unit]
Description=nginx
After=network.target
  
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
  
[Install]
WantedBy=multi-user.target

设置开机启动

  • sudo systemctl enable nginx.service

启动nginx服务

  • sudo systemctl start nginx.service 


查看服务当前状态

  • sudo systemctl status nginx.service

重新启动服务

  • sudo systemctl restart nginx.service 

查看所有已启动的服务

  • sudo systemctl list-units --type=service

安装django python web开发框架

  • sudo apt install python3-pip python3-dev build-essential
  • sudo pip3 install --upgrade pip
  • sudo pip3 install django

安装mysql以及python mysqlclient

  • sudo apt install mysql-server
  • sudo apt install libmysqlclient-dev
  • sudo pip3 install mysqlclient

安装flask web框架

virtualenv 虚拟环境安装

  • sudo pip3 install virtualenv
  • virtualenv env
  • source env/bin/active

安装flask

  • pip3 install flask

离开

  • deactivate

通过uwsgi将django web项目部署到nginx服务器上

  • sudo pip3 install uwsgi

服务器配置

server{
    listen 443 ssl default_server;
    listen [::]:443 ssl default_server;
    server_name www.wh14.club;
    ssl on;
    ssl_certificate /var/www/ssl/1_www.wh14.club_bundle.crt;
    ssl_certificate_key /var/www/ssl/2_www.wh14.club.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    charset utf-8;
    access_log /var/www/log/access_log;
    error_log /var/www/log/error_log;
    client_max_body_size 75M;
    location /static {
        alias /var/www/static;
    }
    location /{
        uwsgi_pass 127.0.0.1:8000;
        include uwsgi_params;
    }
}
uwsgi 配置

[uwsgi]

socket = 127.0.0.1:8000
chdir = /var/www
module = www.wsgi
master = true
processes = 2
threads = 2
max-requests = 6000
chmod-socket = 664
vacuum = true
daemonize = /var/www/log/uwsgi.log
py-autoreload = 1

安装virtualenv管理工具

  • pip install virtualenvwrapper
  • export WORKON_HOME=$HOME/Envs
  • export virtualenvwrapper_python=/usr/bin/python3
  • source /usr/local/bin/virtualenvwrapper.sh
  • 新建虚拟环境 mkvirtualenv [虚拟环境名称]
  • 启动切换虚拟环境 workon [虚拟环境名称]
  • 删除虚拟环境rmvirtualenv [虚拟环境名称]、
  • 离开虚拟环境deactivate

uwsgi停止

  • sudo killall -9 uwsgi

© 著作权归作者所有

Harrybao
粉丝 0
博文 3
码字总数 1000
作品 0
厦门
程序员
私信 提问
生产环境上nginx 不覆盖添加lua模块

需求如下: 需要在nginx配置文件中判断请求中是否带某参数变量,nginx配置本身没有此判断功能。 网上查找资料,可以在nginx中添加lua模块,使用lua的脚本去判断。比较靠谱的文章:CentOS系统...

-悟空-
2015/06/11
2K
2
Ubuntu16.04手动编译PHP5.6.30详解

记录下爬坑过程,以便以后使用 原料: Ubuntu16.04 Server PHP5.6.30 步骤: 手动编译源码之前需要提前安装编译环境,以下为所需要的安装包: apt-get -y install gcc libxml2-dev libssl-de...

luweiv998
2017/03/17
0
0
nginx 学习笔记(1)

本文nginx安装目录为 /usr/local/nginx 安装nginx时所在目录 /usr/local 安装版本 /nginx-1.9.12 下载地址:http://nginx.org/download/nginx-1.9.12.tar.gz 解压,删除安装包,进入解压后的...

lis1314
2016/06/09
70
0
Nginx 性能优化(学习笔记二十五)

1.减小Nginx编译后的文件大小 在编译Nginx时,默认以debug模式进行,而在debug模式下会插入很多跟踪和ASSERT之类的信息,编译完成后,一个Nginx要有好几兆字节。在编译前取消Nginx的debug模式...

sktj
2018/05/18
0
0
wordpress之插件安装和主题安装(包含常见问题)

问题描述:安装WordPress主题及插件需要输入FTP问题,要执行请求的操作,WordPress需要访问您网页服务器的权限。请输入您的FTP登陆凭据以继续 执行如下两条命令即可安装成功: sudo chown -R w...

youcongtech
2018/06/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

shangcheng-my

1.数据库主键、外键类型为bigint,那么在后台应该用什么类型的变量定义? 后台用string接收,因为前段传过来的一般都是json字符串,后台直接接收,mysql是可以吧数字类型的字符串转换为对应的...

榴莲黑芝麻糊
昨天
2
0
微服务架构依赖图

基于spring-cloud-alibaba + dubbo

龙影
昨天
5
0
Centos7 安装zabbix-agent

rpm -i https://repo.zabbix.com/zabbix/4.2/rhel/6/x86_64/zabbix-release-4.2-2.el6.noarch.rpm 可以到https://repo.zabbix.com/zabbix找到对应的版本 yum install zabbix-agent -y 出现E......

abowu
昨天
8
0
文本编辑器GNU nano 4.4 发布

GNU nano 4.4 "Hagelslag" 更新日志: 启动时,光标可以放在第一个或最后一个出现位置 字符串前面带有+/string 或 +?string的字符串。 发生自动硬包装时((--breaklonglines),任何前导引号...

linuxCool
昨天
7
0
你知道字节序吗

字节序 最近在调一个自定义报文的接口时,本来以为挺简单的,发现踩了好几个坑,其中一个比较“刻骨铭心”的问题就是数据的字节序问题。 背景 自定义报文,调用接口,服务端报文解析失败 iO...

杭城小刘
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部