Linux服务器搭建工作需要掌握的核心点
YPE="Ether net" # 网络类型,以太网
BOOTPROTO="static" # 改为静态IP
IPADDR="192.168.8.88" # IP地址
NETMASK="255.255.255.0" # 子网掩码
GATEWAY="192.168.8.1" # 网关
DNS1="192.168.8.1" # 首选DNS
ONBOOT="yes" # 是否可以上网(默认为ON)
清华:https://mirror.tuna.tsinghua.edu.cn/help/centos/
dd 删除光标所在的那一行
u 撤销上一步操作
ndd 删除光标所在位置起的多行 n为数字
yy 复制光标当前所在的那一行
nyy 复制多行 n为数字
p 将已复制的内容粘贴到光标所在的位置的下一行
大P 将已复制的内容粘贴到光标所在的位置的上一行
np 粘贴多行到光标的下一行 n为数字
ctrl+r 重复上一次操作
$ 跳到一行的尾部
0 跳到一行的头部
gg 移动到这个文件的第一行
G 跳到这个文件的最后一行
nG 跳到n行
set nu 显示行号
H 光标移动到屏幕的最上方那一行的第一个字符
M 光标移动到屏幕的中央那一行的第一个字符
L 光标移动到屏幕的最下面那一行的第一个字符
# 1、安装pyhton3.7 的依赖包
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
# 2、下载python3.7的“源码”:
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
# 3、解压并编译安装:
tar -xJvf Python-3.7.0.tar.xz
# 4、用cd命令进入解压出来的Python文件夹
cd Python-3.7.0
# 5、用./方法执行configure,并指定安装到usr目录下
./configure --prefix=/usr/local/python3 --enable-shared
# 6、开始编译安装
make && make install
# 7、配置环境变量, 创建软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 # 创建python3的软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 # 创建pip的软链接
# 8、将编译目录下的libpython3.7m.so.1.0文件复制到
cp /root/Python-3.7.0/libpython3.7m.so.1.0 /usr/lib64/libpython3.7m.so.1.0
# 1、下载mysql的repo源
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
# 2、安装mysql-community-release-el7-5.noarch.rpm包
rpm -ivh mysql-community-release-el7-5.noarch.rpm
# 3、安装mysql
yum install mysql-server
# 4、授权用户可以使用mysql
chown -R root:root /var/lib/mysql
# 5、重启服务
service mysqld restart
# 6、接下来登录重置密码:
mysql -u root # 进入mysql
# 下面为mysql命令
use mysql;
update user set password=password('root') where user='root';
grant all privileges on *.* to 'root'@'%' identified by 'root'; #设置远程登陆密码
flush privileges; #刷新当前配置 注:如果不管用,重启虚拟机ctrl+c,退出myql
# 7、开放3306端口:
# 设置 iptables service
yum -y install iptables-services
# 如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
# 增加规则
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT #保存退出后
# 8、配置防火墙:
systemctl restart iptables.service # 重启防火墙使配置生效
systemctl enable iptables.service # 设置防火墙开机启动
数据库已经建好,下面就是django配置数据库
# 1、在settings文件中,把数据库配置地方更改为以下内容:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 默认数据库为MySQL
'NAME': 'library', # 数据库名为library
'USER': 'root', # 连接数据库的用户 "root"
'PASSWORD': '123456', # 用户密码 "123456"
'HOST': 'www.XXXXXX.cn', # 主机的IP或者域名都可以
'PORT': 3306, # 数据库端口,默认为3306
}
}
import pymysql
pymysql.install_as_MySQLdb()
# 安装虚拟环境
pip3 install virtualenv
# 创建软链接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
# 创建报错虚拟环境目录 名字是任意的
mkdir -p /data/env
# 个人网站发布文件夹 .名字都是任意的!
mkdir -p /data/wwwroot
# 进入env目录
cd /data/env
# 创建虚拟环境
virtualenv --python=/usr/bin/python3 py3_django2
# 激活虚拟环境
cd /data/env/py3_django2/bin
source activate # 退出: deactivate
# 安装django、uwsgi等.
pip install django
pip install uwsgi # django项目发布相关
# 退出虚拟环境
cd /data/env/py3_django2/bin
deactivate
# 给uwsgi建立软链接,方便使用
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
<uwsgi>
<socket>127.0.0.1:8000socket>
<chdir>/data/wwwroot/library/chdir>
<module>library.wsgimodule>
<processes>4processes>
<daemonize>uwsgi.logdaemonize>
uwsgi>
# 1、在windows系统下,用cmd进入项目的目录,生成项目包依赖列表(如果依赖包少的话,这一步忽略)
pip freeze > requirements.txt
# 2、settings文件设置
ALLOWED_HOSTS = ['*'] # 允许所有IP访问
# CentOS7下安装相关依赖包(如果依赖包少的话,这一步忽略)
pip install -r requirements.txt
# 一、指定收集静态文件的目录,修改settings文件中静态文件路径
STATIC_ROOT = '/data/wwwroot/library/static'
# 二、收集所有静态文件到STATIC_ROOT指定的目录
python3 manage.py collectstatic
# 1、用wget下载Nginx
wget http://nginx.org/download/nginx-1.13.7.tar.gz
# 2、下载完成后,解压
tar -zxvf nginx-1.13.7.tar.gz
# 3、进入到nginx-1.13.7目录下,并执行以下命令
./configure
make && make install
# 4、nginx一般默认安装好的路径为/usr/local/nginx 在/usr/local/nginx/conf/中先备份一下nginx.conf文件,以防意外。
cd /usr/local/nginx/conf/
cp nginx.conf nginx.conf.bak
# 5、然后打开nginx.conf,把原来的内容删除,直接加入以下内容:
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name www.xxxxxx.cn; #改为自己的域名,没域名修改为127.0.0.1:80
charset utf-8;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的一样
uwsgi_param UWSGI_SCRIPT library.wsgi; #wsgi.py所在的目录名+.wsgi
uwsgi_param UWSGI_CHDIR /data/wwwroot/library/; #项目路径
}
location /static/ {
alias /data/wwwroot/library/static/; #静态资源路径
}
}
}
"""
6、
要留意备注的地方,要和UWSGI配置文件mysite.xml,还有项目路径对应上。
进入/usr/local/nginx/sbin/目录
执行./nginx -t命令先检查配置文件是否有错,没有错就执行以下命令:
"""
cd /usr/local/nginx/sbin/
./nginx
# 没有提示,证明成功
# 测试
127.0.0.1:80
# 进入djnago项目
cd /data/wwwroot/library/
# uwsgi 解析项目中的配置文件
uwsgi -x library.xml
#以上步骤都没有出错的话。
cd /usr/local/nginx/sbin/
# 重启nginx
./nginx -s reload
# 服务器内部测试是否发布成功
curl 1270.0.0.0:80 #就可以看到网站!
# 关闭防火墙,否则远程不能访问!
systemctl stop firewalld.service
# CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下
# 1、直接关闭防火墙
systemctl stop firewalld.service # 停止firewall
systemctl disable firewalld.service # 禁止firewall开机启动
# 2、设置 iptables service (防火墙)
yum -y install iptables-services # 安装防火墙管理
# 如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables # 用vi编辑器修改防火墙配置
# 增加规则
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
# 保存退出后
esc :wq
systemctl restart iptables.service # 重启防火墙使配置生效
systemctl enable iptables.service # 设置防火墙开机启动
# 查看python版 本
python -V
# 查看python命令如何解析
which python3 # 找到命令位置 /usr/bin/python
# cd 命令进入到 /usr/bin
ls -al python3*
# 查看虚拟环境目录和项目发布目录
注:CentOS7中yum不能使用时,修改yum文件:
vi /usr/bin/yum
第一行最后,,python指定为python2