腾讯云服务器安装配置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 看内核
uname -r 看内核