Linux yum的配置 , python环境管理, nginx搭建简单学习

一丶配置yum的数据仓库

### yum 工具, 方便,自行解决软件之间的依赖关系. 

# 配置yum源仓库	(可以使用,清华源,阿里源)
# 1.配置第一个仓库,里面有大量系统常用软件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 2.还得配置第二个仓库,携带大量第三方软件(nginx,redis,mongodb,mairadb等)
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo # yum仓库的目录
cd /etc/yum.repos.d # 在这个目录第一层的repo文件就会被识别问yum软件仓库 # 清空yum缓存 ,即清空centos官方的yum软件缓存
yum clean al # 生成新的阿里云的yum缓存
yum makecache

二丶centos下安装py3

# 1.必须解决编译所需的基础开发环境
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y # 2.下载python3的编代码包
解压缩
wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz
# 解决 xz锁
xz -d Python-3.6.7.tar.xz
# tar包解压缩
tar -xf Python-3.6.7.tar
# 3.进入解压缩生成的源码文件夹
cd Python-3.6.7 # 4.执行编译三部曲的命令
# 第一曲:找到一个[配置的可执行文件,configure],执行它,且指定软件安装位置
./configure --prefix=/opt/python367/ # 第二曲:在上一步,会生成一个makefile,编译安装,在linux下必须用gcc工具去编译,使用的命令时make
make # 第三曲:这一步是执行安装,会生成一个/opt/python367文件夹,可用的解释器都在这里了
make install # 4 .配置环境变量,便于快捷使用python3
# 1.先获取当前的PATH变量,然后把python3的bin目录加进去
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin # 2.永久修改PATH的值
# -第一个是软连接
ln -s 当前软件的可执行文件路径 /usr/local/sbin # -直接修改/etc/profile ,系统全局的配置文件,每个用户在登陆系统的时候,都会加载这个文件
vim /etc/profile
# 写入新的PATH变量 PATH="/opt/python367/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin" # 5.还得重新登陆,或者手动读取这个/etc/profile
source /etc/profile #让这个文件中的变量生效

三丶虚拟环境virtualenv 和 virtualenvwrapper管理工具

### virtualenv虚拟模块使用
# 1. 下载 虚拟环境模块 , virtualenv是一个python模块
pip3 install -i https://pypi.douban.com/simple virtualenv # 2.用命令创建一个虚拟环境 venv_django2
# 固定写法 # 指定python编译器 # 虚拟环境名称
virtualenv --no-site-packages --python=/opt/python367/bin/python3.6 venv_django2 # --no-site-packages 创建的新的venv,不携带任何模块,是个纯洁的python解释器环境
# --python 指定以哪个解释器为本体,创建新的虚拟环境 # 3. 激活虚拟环境,系统会将venv的解释器目录,加到PATH的最前面
# 进入到 venv_django2 下bin目录 source activate
source activate
# 注意: 在激活虚拟环境的时候,注意检查下,命令和解释器是否来自于虚拟环境里面 # 4. 退出虚拟环境 执行 deactivate
deactivate 即可退出虚拟环境 # 虚拟环境的意义:
同时可运行不同版本, 不同包,模块的python项目.
###   virtualenvwrapper的使用 ,升级版的虚拟环境工具.

# 1.安装  ,不要激活虚拟环境
pip3 install -i https://pypi.douban.com/simple virtualenvwrapper # 2.修改配置文件,每次开机就加载 virtualenvwrapper 这个工具 # 1.打开一个用户个人的环境变量配置文件
全局配置文件 /etc/profile #每个用户登陆都生效
用户个人配置文件 ~/.bash_profile vim ~/.bash_profile #root在登陆的时候,会读取这个文件中的代码 # 2.填入如下信息,针对你自己的python环境修改
export WORKON_HOME=~/Envs #设置virtualenv的统一管理目录
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' #添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/opt/python367/bin/python3.6 #指定python解释器
source /opt/python367/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本 # 3.此时可以使用这个工具,快捷的创建虚拟环境 mkvirtualenv 虚拟环境名 #创建虚拟环境
lsvirtualenv #列出虚拟环境的名字
workon 虚拟环境名字 #激活或切换虚拟环境
lssitepackages #列出虚拟环境中的模块信息,其实就是
cdvirtualenv #进入虚拟环境家目录
cdsitepackages #进入虚拟环境第三方模块目录 # 总结:
# 工具会在/root下创建一个Envs虚拟环境管理文件夹,同时管理多个虚拟环境,便于虚拟环境之间的切换,解决了虚拟环境模块的问题.

四丶Nginx的学习

 ### Nginx 是一个优秀的web服务器,也是反向代理和负载均衡的服务器
# 1. 安装Nginx , 解决安装依赖
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y # 2.下载源代码
wget http://tengine.taobao.org/download/tengine-2.3.2.tar.gz
# 3. 解压
tar -zxvf tengine-2.3.2.tar.gz
# 4.进入源代码目录,指定安装路径,开始编译
./configure --preifx=/opt/tngx232/
make && make install
# 5. 配置Nginx的环境变量
vim /etc/profile #填入新的PATH
PATH="/opt/python367/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/opt/tngx232/sbin" # 6.手动读取文件生效
source /etc/profile

Nginx的目录

[root@s23_linux tngx232]# pwd
/opt/tngx232
[root@s23_linux tngx232]# ls
conf 存放nginx.conf配置文件的
html 存放静态文件的地方
logs 存放nginx各种日志的
sbin 存放nginx可执行命令的地儿 # yum remove nginx -y 卸载Nginx

Nginx的常用指令

nginx -s reload  #平滑重启nginx,不重启nginx,重新读取配置文件,立即生效

nginx  -s stop   #停止nginx

nginx    #启动nginx  

nginx  -t   #检测nginx.conf的语法是否正确

部署一个web站点

[root@s23_linux html]# pwd
/opt/tngx232/html
[root@s23_linux html]# ls
50x.html 55kai.jpg duige.html index.html test.mp4

修改nginx.conf配置文件

# 都是 以键值对的形式存在  的配置信息
server {
#nginx监听的端口
listen 85;
#定义网站的域名
server_name localhost;
# 设置字符
#charset koi8-r;
#nginx的url匹配 , /这个斜杠就代表这样的请求: 192.168.13.117:85/
#这个是最低级匹配,所有的请求都会进入location,进行处理
location / {
#root参数用于定义网页根目录,可以写绝对或者相对路径
#root html;
root /opt/s23html;
#index参数定义网页的首页文件名字
index index.html index.htm;
} # 错误页面
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# 额外: dns客户端配置文件
vim /etc/resolv.conf
nameserver 119.29.29.29 #nameserver填写值是 公网的dns服务器 8.8.8.8 谷歌的公网dns
114.114.114.114
223.5.5.5
223.6.6.6 #阿里巴巴的dns服务
119.29.29.29 #腾讯的dns服务器

多虚拟主机功能

### 基于域名的多虚拟主机, hosts文件 配置 ,和本地dns解析

#  1.第一步,在nginx.conf中配置俩server{}
# netstat -tunple 查看端口
# nginx.conf配置文件:
# 多个域名服务
server {
#nginx监听的地址 80
listen 80;
#定义网站的域名,需要到hosts中写死的,假的域名
server_name www.s23lol.com; #charset koi8-r;
#nginx的url匹配 , /这个斜杠就代表这样的请求: 192.168.13.117:85/
#这个是最低级匹配,所有的请求都会进入location,进行处理
location / {
#root参数用于定义网页根目录,可以写绝对或者相对路径
#当请求时 www.s23lol.com的时候,就去/opt/s23lol文件夹中寻找资料
root /opt/s23lol;
#index参数定义网页的首页文件名字
index index.html index.htm;
} }
server {
listen 80;
server_name www.s23hanju.com;
#进行路径匹配,当请求时 www.s23hanju.com:80/斜杠的时候,就进入这个匹配
location / {
#定义网页根目录
root /opt/s23hanju;
index index.html;
}
} # 2 .分别创建/opt/s23lol 和/opt/s23hanju的文件夹,且创建资料 1.2 在windows下修改hosts文件,填入以下内容
C:\Windows\System32\drivers\etc\hosts
192.168.13.xx www.s23hanju.com
192.168.13.xx www.s23lol.com
### 基于端口的多虚拟主机

server {
#nginx监听的地址 80
listen 80;
#定义网站的域名,需要到hosts中写死的,假的域名
server_name www.s23lol.com; #charset koi8-r;
#nginx的url匹配 , /这个斜杠就代表这样的请求: 192.168.13.117:85/
#这个是最低级匹配,所有的请求都会进入location,进行处理
location / {
#root参数用于定义网页根目录,可以写绝对或者相对路径
#当请求时 www.s23lol.com的时候,就去/opt/s23lol文件夹中寻找资料
root /opt/s23lol;
#index参数定义网页的首页文件名字
index index.html index.htm;
} }
server {
listen 81;
server_name www.s23meiju.com;
#进行路径匹配,当请求时 www.s23hanju.com:80/斜杠的时候,就进入这个匹配
location / {
#定义网页根目录
root /opt/s23meiju;
index index.html;
}
}

优化nginx的 404界面

error_page 400 403 404 405 /404.html;

nginx的访问日志功能检测用户的来源ip,访问时间,客户端地址信息

http {
include mime.types;
default_type application/octet-stream; #日志格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main;
access_log "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G" main; ....
}

Linux yum的配置 , python环境管理, nginx搭建简单学习的更多相关文章

  1. Linux yum源配置

    Linux yum源配置 本文介绍Red Hat下yum源配置方法,Redhat使用yum网络源需要购买服务,但是本地yum源不会收费. CentOS用户自带yum源,并且yum不收费. 准备工具: ...

  2. 转:Linux下使用Nginx搭建简单图片服务器

    最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的,今天再这里简单讲一下Nginx实现上传图片以及图片服务器的大致理念. 如果是个人项目或者企业小项目,仅 ...

  3. CentOS 6.5 yum安装配置lnmp服务器(Nginx+PHP+MySQL)

    以下全部转载于  http://blog.csdn.net/lane_l/article/details/20235909 本人于今晚按照该文章使用centos 6.7 64bit安装成功,做个备份, ...

  4. Linux yum仓库配置

    yum仓库配置 10.1 概述 YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包 ...

  5. linux(centOS7,mini),python环境的搭建

    今天想试一试python在linux下的工作,在vmware中安装了centOS7版本的linux,先前装过一个带GUI的,但是感觉在虚拟机理跑的太慢,干脆直接装一个最精简的mini版,试一下ifco ...

  6. 使用nginx搭建简单文件服务器

    最近再做一个博客,本想使用fastdfs标准的文件存储服务器,但考虑到资源占用问题,且使用nginx比较快速,且效果不差.于是采用ngixn搭建. nginx搭建文件服务器,本质上就是nginx的静态 ...

  7. Nginx之使用nginx搭建简单的文件服务器

    使用nginx可以搭建简单文件服务器 安装nginx(不详述) 修改配置文件 /usr/local/nginx/conf/nginx.conf user root; /usr/local/nginx/ ...

  8. Linux中安装配置启动关闭nginx等一系列动作

    Nginx简介 1.Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器,也可以作为邮件代理服务器: 2.Nginx 是由俄罗斯人 Igor Sysoev 采用C语言开发编写的 ...

  9. linux yum源配置及vim运用

    redhat7默认没有yum模板,需要自己创建[root@localhost ~]# mount /dev/cdrom /root/iso/(挂载镜像)mount: /dev/sr0 写保护,将以只读 ...

随机推荐

  1. vue-router路由传参之query和params

    首先简单来说明一下$router和$route的区别 //$router : 是路由操作对象,只写对象 //$route : 路由信息对象,只读对象 //操作 路由跳转 this.$router.pu ...

  2. linux open 黄色文件

    表示设备文件 生成的新的pdf

  3. 进化后的const分析

    C语言中的const const修饰的变量是只读的,本质还是变量 const修饰的局部变量在栈上分配空间 const修饰的全局变量在只读存储区分配空间 const只在编译期有用,在运行期无用 注意:c ...

  4. day38_8_22数据库(navicat操作)

    补充: exist存在EXISTS关字键字表示存在.在使用EXISTS关键字时,内层查询语句不返回查询的记录,而是返回一个真假值,True或False. 当返回True时,外层查询语句将进行查询当返回 ...

  5. 莫烦TensorFlow_09 MNIST例子

    import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_dat ...

  6. Jmeter压力并发测试

    一.http://jmeter.apache.org/ 二.点击Download Releases选择版本下载 三.下载解压: 将解压后的文档存盘-下载logkit-2.0.jar(汉化包)放到jme ...

  7. Redis笔记2-Redis安装、配置

    下载安装包 wget http://download.redis.io/releases/redis-4.0.8.tar.gz解压 tar xzvf redis-4.0.8.tar.gz安装 cd r ...

  8. 【oracle】迁表结构和数据

    背景:把一些表和数据从某库迁到另一个库 1.命令框: exp yktsh/yktsh_2019@orcl30 file=d:\yktsh20191201.dmp log=d:\daochu; exp ...

  9. options模块介绍

    一. options是什么? 是tornado中为我们提供好的一个模块. 二. options的作用? 用来定义, 存储, 转换全局参数. 即定义变量 三. options如何使用? import t ...

  10. TCP三次握手第三次握手时ACK丢失怎么办

    Server 端 第三次的ACK在网络中丢失,那么Server 端该TCP连接的状态为SYN_RECV,并且会根据 TCP的超时重传机制,会等待3秒.6秒.12秒后重新发送SYN+ACK包,以便Cli ...