1,开机初始化的配置

# 腾讯云安装可以忽略此步骤
iptables -F # 清空防火墙
/etc/init.d/iptables stop # 关闭iptables
setenforce # 暂停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  看内核

最新文章

  1. [转]加速Android Studio/Gradle构建
  2. C++_系列自学课程_第_6_课_bitset集_《C++ Primer 第四版》
  3. pat1057 stack
  4. 【资源下载】Ext4.1.0_Doc中文版_V1.0.0_Beta正式提供下载!
  5. java 新建文件夹保存
  6. union all合并记录
  7. php set env
  8. android 视频播放器的INTENT-FILTER属性
  9. KestrelServer
  10. c语言统计字符数(判断a-z哪个字符出现次数最多)
  11. CentOS7中使用iptables
  12. excle中表引用
  13. centos7下安装vnc更改vnc默认端口号
  14. 【BZOJ】1443: [JSOI2009]游戏Game
  15. Linux如何解决动态库的版本控制
  16. java中的类、对象、方法
  17. php内核为变量的值分配内存的几个宏
  18. [Luogu1891]疯狂LCM[辗转相减法]
  19. javascript原生bind方法ie低版本兼容详解
  20. python cx_oracle单个表中批量插入数据

热门文章

  1. SSE图像算法优化系列一:一段BGR2Y的SIMD代码解析。
  2. ASP.NET CORE 之 在IIS上部署MVC项目
  3. Jmeter进行接口测试
  4. C#调用接口注意要点 socket,模拟服务器、客户端通信 在ASP.NET Core中构建路由的5种方法
  5. Hyper-V 怎样拷贝文件至虚拟硬盘并附加到虚拟机上
  6. android 对话框全屏
  7. 10个对Web开发者最有用的Python包
  8. 奋斗STM32V3版ADC例程
  9. Ubuntu和centos离线安装软件包(apt和yum)
  10. vue用组件构建应用