腾讯云服务器安装配置nginx+python3.6.5+虚拟环境

1,开机初始化的配置

# 腾讯云安装可以忽略此步骤
iptables -F # 清空防火墙 /etc/init.d/iptables stop # 关闭iptables setenforce 0 # 暂停selinux

2,编译安装python3

2.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.2 下载python3的源码包

cd /opt  # 将源码包下载到/opt目录内
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz

2.3 解压缩源码包

xz -d Python-3.6.5.tar.xz
tar -xf Python-3.6.5.tar

2.4 切换到python3目录

cd /opt/Python-3.6.5

2.5 释放脚本文件

./configure --prefix=/opt/python365  # 注意指定文件目录了

2.6 编译,编译安装

 make && make install  # 非常重要,一定要编译

2.7 建立软连接

ln -s /opt/python365/bin/python3 /usr/local/bin/python3  # 将python3的执行路径放到user的bin目录里面。软连接功能就相当于快捷方式

 2.8 将编译的python3的环境变量添加到path

echo $PATH  # 查看环境变量
vim /etc/profile #写入到配置文件,永久生效。输入i,进入编辑模式 export PATH=$PATH:/opt/python365/bin/ #在文件最底部写入,点击esc,并输入:wq保存退出
source /etc/profile # 输入命令,使得配置文件生效

3,python解释器的自动补全功能

3.1 下载

yum install -y readline-devel -y 

3.2 下载readline

pip3 install readline    # 注意有可能是pip  输入pip3命令会显示pip版本

3.3 进入python3

./python3  # 输入这个命令进入python3
import readline,rlcompleter # 进入python3后输入命令
readline.parse_and_bind('tab:complete') # 进入python3后输入命令
exit() # 退出python3环境
Ctrl d  # 退出python3环境

4,创建python虚拟环境

4.1 下载virtualenv

pip3 install  virtualenv  # 现下载virtualenv,它是来帮我们创建虚拟环境的

4.2 创建软连接

ln -s /opt/python365/bin/virtualenv /usr/bin/virtualenv

4.3 将虚拟环境创建在一个新的文件夹里面,方便管理

mkdir /env  # 创建新文件夹
cd /env  # 进入这个文件夹

4.4 创建虚拟环境venv1

virtualenv --no-site-packages venv1 #创建venv1虚拟环境
# 如果报错,可使用下一条命令创建虚拟环境
virtualenv venv1 --no-setuptools --no-pip --no-wheel

4.5 激活虚拟环境

source venv1/bin/activate  # 注意激活之前不要退出虚拟环境

4.6 虚拟环境主要是对环境变量进行更改echo $PATH

pip3 install requests  # 在虚拟环境里面下载模块,不要退出虚拟环境

4.7 退出虚拟环境

deactivate

4.8 退出虚拟环境后,从root根目录再次进入虚拟环境

cd /env  # 进入容纳虚拟环境的文件夹
source venv1/bin/activate  # 激活虚拟环境

5,安装ipython解释器

# 下载ipython ,在root根目录下载或虚拟环境下载都可,两者互不干扰。但是我安装到了虚拟环境里面了
pip3 install ipython #交互式的解释器
exit # 退出ipython
# 下载notebook,它的功能就像pycharm一样,可以提示信息 pip3 install notebook

6,安装nginx

6.1 依赖库安装  要安装在root根目录里,不要装在虚拟环境里面

yum install gcc-c++   pcre pcre-devel zlib zlib-devel openssl openssl-devel 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 

6.2 下载源码包

yum install wget  # 需要提前下载wget工具
cd /opt # 最好还是下载到opt目录里面
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz

6.3 解压缩源码

tar -zxvf nginx-1.12.0.tar.gz

6.4 切换到nginx源码包路径

cd nginx-1.12.0

6.5 配置,编译安装

./configure --prefix=/opt/nginx1-12/  # 注意这里指定了将解压文件存放到的路径,是从根目录开始的
make && make install 

6.6 启动nginx,进入sbin目录,找到nginx启动命令

cd ~  # 先回到根目录 
cd /opt  # 进入这个文件夹,注意这个文件夹被隐藏了
ls  # 查看opt文件夹里面的子文件或文件夹会看到 nginx1-12
cd nginx1-12  # 进入这个文件夹
ls  # 显示子文件或文件夹,会看到sbin文件夹
cd sbin  # 进入sbin文件夹,sbin文件时放的启动nginx的配置,注意:cd sbin不要写成 cd /sbin,这样进去的是根目录里面的sbin,就进错目录了
#注意一定记得关闭防火墙
./nginx # 启动 ./nginx -s stop # 关闭 ./nginx -s reload # 重新加载
cd nginx1-12 #
netstat -tunlp | grep 80 # 服务启动没启动,去看端口来判断。80端口就是net默认的端口
ps -ef | grep nginx # 然后看nginx程序跑起来没
ip a # 看ip地址,第二个地址是10.0.0.200。然后通过浏览器访问一下。看到

 Welcome to nginx!

  表示,服务启动成功!

7,nginx日志访问功能

 承接上面的继续:

7.1 进入nginx的配置目录

cd conf/  # 在nginx1-12目录里面sbin文件是和启动服务相关,conf和配置相关。进入conf目录后会看到一个nginx.conf主配置文件。

7.2 编辑nginx.conf,并打开access.log的日志功能

vim nginx.conf  # 然后输入i进入编辑模式,然后将下面四行的注释符去掉,日志就生效了。保存退出:wq
#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;

7.3 重启nginx

cd ../sbin  # 进入sbin目录重启nginx
./nginx -s reload

7.4 查看效果

cd ../logs  # 进入nginx1-12里面免得logs目录,这个目录和日志相关。
tail -f access.log # 这样就可以看浏览器访问服务器的日志记录了,里面可以看请求方式,浏览器信息等

 7.5 增加黑名单

vim nginx.conf  # 在编辑里面加黑名单
# 按照下面的方式添加ip地址即可
error_page 500 502 503 504 /50x.html;
location = /50x.html {
deny 196.128.12.94;
deny 196.128.12.9;
root html;
}
注意:添加完黑名单记得重启nginx服务就行了
cat /etc/redhat-release   看版本
uname -r  看内核
posted @ 2018-08-19 17:40  aaronthon  阅读(786)  评论(0编辑  收藏  举报