django+vue+nginx+uwsgi部署centos7,仅需九步

从标准到实战:详解IEC 61000-4-2下的ESD电路防护设计 本文深入解析IEC 61000-4-2标准下的ESD电路防护设计,从静电防护的基础原理到实战应用。详细介绍了接触放电与空气放电的区别、防护器件选型要点(如TVS管和压敏电阻)以及PCB布局的黄金法则,帮助工程师有效提升电子产品的抗静电能力,确保设备在严苛环境下的稳定运行。 阅读详情

历时约一周的时间,从一叶障目到一目了然,转载请注明出处,欢迎收藏,评论,点赞,转发哦!
服务器:Linode 2GB: 1 CPU, 50GB Storage, 2GB RAM
系统:CentOS 7
项目:云呗BI系统
工具:Xftp6和Xshell6
软件:pycharm2019.1,Python3.7.4
环境:django2.2.6和vue(3.0版本),nginx和uwsgi最新版本

第一步:django配置

#!settings.py
"""
Django settings for dataAnalysis project.

Generated by 'django-admin startproject' using Django 2.2.7.

For more information on this file, see
https://docs.djangoproject.com/en/2.2/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/2.2/ref/settings/
"""

import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'u3l9qsl2vp0^ddb2n)h6)&=od_!p7+^4*=t2u+=k&7&%$uoock'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True	# 测试的时候看情况给值

ALLOWED_HOSTS = ['173.255.222.190', 'localhost', '0.0.0.0:8000', '127.0.0.1', 'www.cwwage.com']
# ALLOWED_HOSTS = []

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'dataAnalysisApp.apps.DataanalysisappConfig',
    'corsheaders',
]

MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
# 开发调试时,实际上是开两个server,一个是8000端口的django server,一个是8080端口的node server
# 增加一行在django层注入header,解决跨域问题
CORS_ALLOW_CREDENTIALS = True   # 允许携带cookie
CORS_ORIGIN_ALLOW_ALL = True    # 允许所有域名跨域(优先选择)
CORS_ORIGIN_WHITELIST = []      # 白名单
# CORS_URLS_REGEX = r'^.*$'
CORS_ALLOW_METHODS = (
    'DELETE',
    'GET',
    'OPTIONS',
    'PATCH',
    'POST',
    'PUT',
    'VIEW',
)

CORS_ALLOW_HEADERS = (
    'accept',
    'accept-encoding',
    'authorization',
    'content-type',
    'dnt',
    'origin',
    'user-agent',
    'x-csrftoken',
    'x-requested-with',
    'X-Token',
    'x-token',
    'Pragma',
)

ROOT_URLCONF = 'dataAnalysis.urls'

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        # 'DIRS': [os.path.join(BASE_DIR, 'templates')]
        'DIRS': [os.path.join(BASE_DIR, "fronted/dist")],	#vue打包过来的文件存放路径
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

WSGI_APPLICATION = 'dataAnalysis.wsgi.application'

# Database
# https://docs.djangoproject.com/en/2.2/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

# Password validation
# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators

AUTH_PASSWORD_VALIDATORS = [
    {
        'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
    },
]
# REST_FRAMEWORK = {
#     # Use Django's standard `django.contrib.auth` permissions,
#     # or allow read-only access for unauthenticated users.
#     # 'DEFAULT_PERMISSION_CLASSES': [
#     #     'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
#     # ]
#     'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAdminUser',),
#     "PAGE_SIZE": 10,
# }
# DEFAULT_PERMISSION_CLASSES定义权限,只有管理员用户才能访问
# 定义分页条数
# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/

# LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'zh-hans'

# TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

# USE_TZ = True
TIME_ZONE = 'Asia/Shanghai'  # 本地时间
USE_TZ = False

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/

# 用户上传的文件配置(暂时没有用到)
MEDIA_ROOT = os.path.join(BASE_DIR, '/media/data_json/')
MEDID_URL = '/media/data_json/'

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    # os.path.join(BASE_DIR, "static")
    os.path.join(BASE_DIR, "fronted/dist/static")
]

STATIC_ROOT = os.path.join(BASE_DIR, "static/")     # 部署专用 python3 manage.py collectstatic

主路由:

from django.urls import re_path, include
from django.views.generic import TemplateView
from django.views.static import serve
from dataAnalysis.settings import STATIC_ROOT


urlpatterns = [
    # path('admin/', admin.site.urls),
    re_path(r'^static/(?P<path>.*)/$', serve, {'document_root': STATIC_ROOT}),
    re_path(r"dataAnalysis/", include(("dataAnalysisApp.urls", "dataAnalysisApp"), namespace="app")),
    re_path(r'^$', TemplateView.as_view(template_name="index.html")),
]

子路由、views、处理数据的文件(科学计算)省略

第二步:服务器

首先这个服务器是个裸服务器,Linux也是个裸系统,意思就是刚买来的,还新鲜的!

第一步:使用Xftp/Xshell连接服务器,具体连接方法自行问度娘。

第二步:开启需要的端口,因为阿里云可以可视化快关端口,但是是linode不支持可视化,所以只能用命令来了。

# 查看版本   
firewall-cmd --version
# 查看所有打开的端口
firewall-cmd --zone=public --list-ports
# 添加
# (--permanent永久生效,没有此参数重启后失效)该调参侠出手了!
firewall-cmd --zone=public --add-port=80/tcp --permanent    
# 重新载入
firewall-cmd --reload
# 查看
firewall-cmd --zone= public --query-port=80/tcp
# 删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

第三步:安装Nginx

yum check-update && yum update更新yum
查看wget是否安装

rpm -qa|grep "wget"
rpm是一个软件包管理工具

如果没有反应,执行yum -y install wget 可以安装
在root目录下操作:cd ~ 就到root目录下面了

01.下载nginx wget http://nginx.org/download/nginx-1.17.0.tar.gz
02.解压
03.cd到刚解压的文件下,安装依赖
yum -y install pcre-devel zlib-devel
04.配置
./configure --prefix=/usr/local/nginx

如果:./configure: error: C compiler cc is not found
安装依赖yum -y install gcc gcc-c++ autoconf automake make 重新配置
上面粘贴失败时https://www.cnblogs.com/jpfss/p/9694842.html复制里面和上面相同的命令,再重新执行配置命令

05.make & make install
06.启动nginx /usr/local/nginx/sbin/nginx
07.在谷歌浏览器输入服务器IP,可看见Welcome to nginx!如果没有出现,根据上面开启防火墙端口的命令,开启防火墙,直到看见Nginx的欢迎界面

第四步:安装Python3.7

01.下载Python文件

wget https://www.python.org/ftp/python/3.7.1/Python-3.7.4.tar.xz

02.解压 tar -zxvf Py+Tab自动补全文件名,回车开始解压
03.切换目录解压好的Python文件夹下面之后,安装依赖
yum -y install gcc-* openssl-* libffi-devel sqlite-devel
04.配置:解决SSL的问题

可以参考的文章地址:https://www.jianshu.com/p/3ec24f563b81
在这里插入图片描述
开始配置Python:

./configure --enable-optimizations --with-openssl=$HOME/openssl

如果你的Django文件中使用pandas库,就执行:

./configure --with-openssl=$HOME/openssl

否则pandas会报错找不到lzma模快,因为我这个项目使用了pandas,所以我执行
./configure --with-openssl=$HOME/openssl这个配置命令,注意:没有指定路径,默认安装了Python

05.编译 make -j8
06.安装:make install
07.命令行输入python3验证是否安装成功,exit()退出Python
08.升级pip pip3 install --upgrade pip

当这个命令不能使用时:就是SSL没有安装好,可以使用:

pip3 install --upgrade pip -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

当然:这样可以安装,但是后面所有的库都需要这样安装,所以还是回过头来重新返回到上面的04步,再执行05。06。07。08。。。等等

第五步:虚拟环境

01.在当前目录执行:pip3 install virtualenv
02.退回到root目录,新建一个虚拟环境
virtualenv -p python www	# www为虚拟环境名称
ls命令可以查看当前目录下多了一个www的文件夹
03.立即生效虚拟环境
source www/bin/activate
04.在虚拟环境中安装Django,注意当前版本
pip3 install django==2.2.6
05.检测Django是否已经安装成功,注意:只能在虚拟环境使用Django,退出虚拟环境就会报错:找不到Django
import django
print(django.VERSION)

如果打印出Django版本号,那么恭喜,可以进入第六步的操作

第六步:新建Django项目(测试)

01.,在虚拟环境中,切换到root目录
02.执行django-admin.py startproject 项目名(最好和本地项目名一致)
03.查看新建的项目(裸项目)django-admin.py
04.修改settings配置(建议在Xftp操作)
ALLOWED_HOSTS = ['173.255.222.190', 'localhost', '0.0.0.0:8000', '127.0.0.1', 'www.cwwage.com']	# 如果域名已经解析了,就可以往这个里面写了,否则不能写
05.启动django项目:python3 manage.py runserver 0.0.0.0:8000
06.如果报错是关于:sqlite3

可以参考:https://cloud.tencent.com/developer/article/1439327
新版本:wget https://www.sqlite.org/2019/sqlite-autoconf-3300100.tar.gz
注意执行:

vi ~/.bashrc

把上面参考文章里面的:export LD_LIBRARY_PATH="/usr/local/lib"粘贴在最后一行
再执行:source ~/.bashrc

07.在浏览器打开服务器IP:8000,如果打开Django欢迎界面,操作正常,如果打不开,那么可能是8000端口没有开启,可查看文章上面的端口操作命令
08.退出虚拟环境:deactivate,注意回到root目录cd ~
09.由于项目已经部署完毕,我忽略了测试的其他操作

第七步:配置uwsgi

01.安装uwsgi:pip3 install uwsgi
02.手动新建配置文件:
madir /etc/uwsgi
vim /etc/uwsgi/uwsgi.ini

文件内容:

[uwsgi]
chdir = /usr/local/nginx/html/dataAnalysis
module = dataAnalysis.wsgi
hodule = /root/www
master = true
processes = 5
socket = 0.0.0.0:9090
vacuum = true
pidfile = /var/run/uwsgi9090.pid
daemonize = /var/log/uwsgi9090.log
pythonpath=/root/www/lib/python3.7/site-packages
03.启动uwsgi:uwsgi --ini /etc/uwsgi/uwsgi.ini
04.查看服务器的端口状态:netstat -ntpl,如果出现127.0.0.1:9090正常
05.关闭uwsgi:cat /varrun/uwsgi9090.pid,会出现一个端口号,执行:kill -9 端口号就可以关闭uwsgi服务
06.由于uwsgi的启动不是很方便,所封装了一个uwsgi启动,关闭的方法
vim /etc/init.d/uwsgi	# 在init.d用tab时可能无反应,因为它只是一个快捷方式,在Linux中称之为软连接

然后依次执行 i Esc : q! 四个步骤,最后回车
用Xftp找到uwsgi文件,在文件里面添加下面的程序:

#! /bin/sh
DESC="uwsgi daemon"
NAME=uwsgi
DAEMON=/usr/local/bin/uwsgi
CONFIGFILE=/etc/uwsgi/$NAME.ini
PIDFILE=/var/run/${NAME}9090.pid
SCRIPTNAME=/etc/init.d/$NAME
FIFOFILE=/tmp/uwsgififo
set -e
[ -x "$DAEMON" ] || exit 0
 
do_start() {
if [ ! -f $PIDFILE ];then
    $DAEMON $CONFIGFILE || echo -n "uwsgi running"
else
    echo "The PID is exit..."
fi
}
 
do_stop() {
if [ -f $PIDFILE ];then
    $DAEMON --stop $PIDFILE || echo -n "uwsgi not running"
    rm -f $PIDFILE
    echo "$DAEMON STOPED."
else
    echo "The $PIDFILE dosen't found"
fi
}
 
do_reload() {
if [ -p $PIDFILE ];then
    echo w > $FIFOFILE
else  
    $DAEMON --touch--workers--reload $PIDFILE || echo -n "uwsgi can't reload"
fi
}
 
do_status() {
    ps aux|grep $DAEMON
}
 
case "$1" in
 status)
    echo -en "Status $NAME: \n"
    do_status
 ;;
 start)
    echo -en "Starting $NAME: \n"
    do_start
 ;;
 stop)
    echo -en "Stopping $NAME: \n"
    do_stop
 ;;
 reload|graceful)
    echo -en "Reloading $NAME: \n"
    do_reload
 ;;
 *)
    echo "Usage: $SCRIPTNAME {start|stop|reload}" >&2
    exit 3
 ;;
esac
 
exit 0
07.修改uwsgi的权限:chmod 755 /etc/init.d/uwsgi
08.再次启动uwsgi的操作:
/etc/init.d/uwsgi start		# 启动
/etc/init.d/uwsgi stop		# 关闭
/etc/init.d/uwsgi status	# 查看运行状态

注意:这里不能随便开启或关闭,否则可能会报错:

signal_pidfile()/kill(): No such process [core/uwsgi.c line 1693]

一但报错:就得把刚才的uwsgi.ini和uwsgi删除重新执行启动和关闭,然系统找不到文件,然后再把删除的两个文件放在原来的位置,在启动uwsgi就没什么问题了,不过要注意提前备份。

09.查看uwsgi文件的位置:which uwsgi

第八步:配置nginx

就怕蒙圈,一股脑全粘贴到这里了
路径为:vim /usr/local/nginx/conf/nginx.conf,可以到Xftp里面操作


user  root;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


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;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
	#gzip  on;
	
	# 这个是nginx直接监听80端口,直接在服务器上找静态文件
    server {	
        listen      80;
        server_name www.cwwage.com;
        location / {
            root    /usr/local/nginx/html/dataAnalysis/fronted/dist;
            index index.html;
            try_files $uri $uri/ /index.html;
        }
    }

	# 这个是通过django查看静态文件,这个速度明显要慢,不过为了应对不同的情况,我下面也同样加载了静态文件
	# 路径什么的,根据自己的需求,差不多只修改项目名就行了(dataAnalysis)
    server {
        listen       8000;
        server_name  www.cwwage.com cwwage.com;
        charset utf-8;
        # gzip_types    application/json;
        # 下面这个就是查看静态文件,是从django启动的,速度要慢一些
        location /static{
           alias /usr/local/nginx/html/dataAnalysis/static/;
        }
        location / {	# 下面的配置有的注释了,可以随时打开就行了
            include uwsgi_params;
            uwsgi_pass 173.255.222.190:9090;
            uwsgi_param UWSGI_SCRIPT dataAnalysis.wsgi;
            uwsgi_param UWSGI_CHDIR /usr/local/nginx/html/dataAnalysis;
            index  index.html index.htm;
            client_max_body_size 35m;
            #uwsgi_cache_valid 1m;
            #uwsgi_temp_file_write_size 64k;
            #uwsgi_busy_buffers_size 64k;
            #uwsgi_buffers 8 64k;
            #uwsgi_buffer_size 64k;
            uwsgi_read_timeout 300;
            uwsgi_send_timeout 300;
            uwsgi_connect_timeout 300;
        }
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

第九步:项目上线

01.用Xftp把项目放在/usr/local/nginx/html/下面就可以了
02.在root目录下启动虚拟环境:source www/bin/activate
03.cd到项目目录里面,注意是有manage.py的这一层目录。

启动项目,安装需要的库:python3 manage.py runserver 0.0.0.0:8000,如果缺少哪个库,CTRL+C退出django运行状态,执行pip3 install 库名,然后再执行启动项目,如此反复,直到项目正常启动,其实是有快速导入库的方法,要在本地执行pip freeze > requirements.txt生成一个requirements.txt文件,在Linux中虚拟环境中pip install -r requirements.txt可快速安装项目需要的库

04.在浏览器输入域名,查看发生了什么,是不是项目已经能访问到了呢?

第十步:如果有什么问题VX:gcw-410,昵称:浅情人不知,欢迎交流!

Winform从入门到精通(7)——ComboBox(史上最全) 本文介绍ComboBox控件的详细用法,包括所有属性、事件,绝对史上最全! 阅读详情

相关推荐

实战复盘:如何用Frida脚本绕过某书APP的libmsaoaidsec.so检测(附完整Hook代码)

本文深入探讨了如何利用Frida脚本绕过某书APP通过libmsaoaidsec.so实现的反Frida检测机制。通过分析动态链接过程中的关键节点和检测模式,提供了两种实战验证的绕过方案:动态Hook关键链接器函数和静态Patch SO文件。文章还分享了进阶对抗策略和调试技巧,帮助安全研究人员有效应对现代移动安全防护挑战。

weixin_42706667的博客 215

重新启动uwsgi出现错误No such process[core/uwsgi.c line 1695]

重新启动uwsgi出现错误No such process[core/uwsgi.c line 1695] 解决办法:ps -ef |grep uwsgi(查看所有的uwsgi进程) 查看后将其全部kill:killall -s INT uwsgi(杀死所有的uwsgi进程) 重新启动(到uwsgi目录下):uwsgi --ini uwsgi.ini ...

闰土与猹 1514

基于DPLL算法解决3-SAT问题(C++实现)

近日看到一个3-SAT问题(Boolean SATisfiability Problem, 布尔逻辑可满足性问题),试着写了个算法求解。

qq_63241496的博客 2214

出现signal_pidfile问题

执行:uwsgi --stop uwsgi.pid 就会出现这样的问题 signal_pidfile()/kill(): No such process [core/uwsgi.c line 1693] 解决方案: https://www.jianshu.com/p/56eb80a0ff83 只需要kill掉之前ini的进程: 因此只需要将之前的ini全部kill,既然重启不管用就全关掉手动开启...

nbxuwentao的博客 1384

VSCode玩转STM32:手把手教你配置EIDE插件与OpenOCD调试(附野火DAP配置文件详解)

本文详细介绍了如何在VSCode中配置EIDE插件与OpenOCD进行STM32开发,特别针对野火DAP调试器提供了配置文件详解。从基础环境搭建到深度调试技巧,帮助开发者高效完成STM32项目开发,实现现代化嵌入式开发工作流。

weixin_26905487的博客 551

Python学习(一)

快速入门 1.Linux系统中是可以直接使用Python进行编程,具体如下: 进入Python:在linux的Terminal中输入 Python ,进入Python的命令行; 退出Python:在linux的Terminal中输入quit() 或 exit() 或 ctrl +d ,再回车,退出Python的命令行。 2.python的源程序就是一个特殊格式的文本文件,可以使用任意文本编辑软件做Python的开发。 3.Python程序的文件扩展名通常都是 .py。 4.执行Python程序的方式:在

SummerXRT的博客 1278

uwsgi signal_pidfile()/kill(): No such process [core/uwsgi.c line 1693]

查看uwsgi有关的进程 ps -ef |grep uwsgi 133B7091-2851-413B-AB23-05B7F3FCC65A.png 将项目下的uwsgi.pid里面的数字改为一样的即可

weixin_41486438的博客 492

grafana 配置页面告警

Rate 下拉选择也可,保持默认也可。By label 选择一个比如选择filename。配置无数据或者错误数据的时候如何处理,这里选择 Normal (表示当做正常不会告警)单机 node_name 标签,选择一个主机,选好后单机 Show logs。单机 New floder,如果之前配置过,也可以选择。单机 Save contact point 保存即可。会跳出如下对话框(如果没有跳出就自己单机选择下)完成后会自动生成如下图,告警规则部分就配置好了。选择告警接收方式(这里选择企业微信 WeCon)

weixin_40548182的博客 3250

在虚拟环境用uwsgi部署Django4.1时的出现的问题的解决思路

一次部署的遇到的问题与解决思路

康娜喵的原创博客 990

手把手教你理解MIS结构C-V特性曲线:从理论到测试实操

本文深入解析了金属-绝缘体-半导体(MIS)结构的电容-电压(C-V)特性曲线,从积累、耗尽到反型等物理状态出发,详细阐述了其测试原理与实操要点。文章重点介绍了如何通过C-V曲线提取氧化层厚度、掺杂浓度、界面态密度等关键参数,并探讨了偏压-温度(B-T)应力实验在揪出可动离子电荷等可靠性问题中的应用,为半导体器件物理研究与工艺评估提供了实用指南。

weixin_29304021的博客 439

ABAP CDS 货币与计量单位换算全攻略:CURRENCY_CONVERSION、UNIT_CONVERSION 与 DECIMAL_SHIFT 的工程化实践

本文介绍了SAP ABAP CDS中三种单位/货币换算函数(UNIT_CONVERSION、CURRENCY_CONVERSION、DECIMAL_SHIFT)的实战应用。重点包括:各函数的职责边界与适用场景,参数配置与精度控制策略,以及基于标准表(T006、TCUR*等)的换算规则来源。文章提供可运行的CDS示例,涵盖单位换算(如MI转KM)、货币汇率转换(含小数位处理)及纯小数位调整等典型场景,并强调生产环境中需注意的精度差异与审计风险控制。适用于企业报表、成本核算等需要统一口径的业务场景。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1553

uwsgi关闭不掉显示No such process

在我的云服务器上经历了一系列的困难之后终于配置好了Django环境和安装好了uwsgi以及nginx,在最后激动人心的重启服务的时刻却出现了以下错误: signal_pidfile()/kill(): No such process [core/uwsgi.c line 1693] 这很明显重启时候出现了什么问题,但是会过去想也不应该,配置文件没错,指令也没错为什么呢?实在不能理解。问了...

王菜菜的成长之路 1820

【深度学习新浪潮】OpenClaw技术架构详解:从核心组件到生产级优化

OpenClaw 以三层解耦架构 + 四大核心模块为基础,实现了本地优先、易部署、易扩展、易优化的 AI 智能体平台。开发者可通过极简部署快速落地,再通过量化、缓存、并发、分布式等手段持续优化性能,适合从个人助理到企业级自动化的全场景应用。

专注:太空算力、AI infra、异构调度、大模型成本工程 2920

报错(No such process [core/uwsgi.c line 1693])的解决办法

Centos7 通过uwsgi重启(uwsgi --reload uwsgi.pid)或停止(uwsgi --stop uwsgi.pid)时报错:signal_pidfile()/kill(): No such process [core/uwsgi.c line 1693]的解决办法

程序猿杂记 1万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Django + Vue + Nginx + uWSGI 部署

Django + Vue + Nginx + uWSGI 部署 如果您的英语阅读能力尚可,那么我推荐您阅读官方文档进行部署, 本篇内容就是参考官方文档进行部署的。 环境 操作系统:CentOS 7 Python版本:Python 3.7.3 Django版本:Django 2.2.4 Vue版本:Vue 3.11.0 概念 Django: Python的前端框架。 Vue: 前端框架。 ...

狸吉、的博客 2387

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

linux kill 进程

准备kill以下两个进程 opt/IBM/WebSphere/AppServer/java/bin/java opt/IBM/WebSphere/AppServer/java/jre/bin/java 通过ps aux|grep opt/IBM/WebSphere/AppServer/java/bin/java 得到进程号,再用kill-9命令,一直提示 no such process.

tanyujing的专栏 1346

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

centos7+django+uwsgi+vue 项目搭建

1.安装anaconda 安装bzip2,系统中可能已经自带 yum -y install bzip2 下载anaconda3 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3- 5.3.1-Linux-x86_64.sh bash Anaconda3-5.3.1-Linux-x86_64.sh 回车即是默认文件夹,也可以自己选择文件夹安装, 比如:[/root/anaconda3] >>> /e

qq_42924073的博客 3612

Nginx+uwsgi+Django+Vue在CentOS7上的项目部署流程

1、Django工程文件 (1)将开发好的Django后端工程文件发送到远程服务器,可以借助工具,也可以使用scp命令 以下使用"mydjango"代表Django工程文件 scp django工程路径 用户@远程服务器IP:拷贝路径 例: scp /home/admin/project/mydjango root@0.0.0.0:/home/admin/project/mydjango (2)...

CodeSunShines 1143

centos7使用nginx+uwsgi部署vue+django前后端分离项目(1)

全新的阿里云服务器 一、服务器基础环境搭建 1.1 更新系统软件包 yum -y update 1.2 安装软件管理包和可能使用的依赖 yum -y groupinstall "Development tools" 二、python 安装 2.1 下载 cd /usr/local wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz 2.2 解压安装 tar -zxvf Python-3.7.3.tgz cd Python-3.7.

weixin_38650871的博客 670

(单/双)服务器部署django+vue项目

(单/双)服务器部署django+vue项目只有一点不同。 ssh工具选什么都可以(putty,xshell,Windowspowershell),自行选择。 一.配置python3环境 一般下载的源码包都下载在/usr/local/src目录下 编译安装在/usr/local/目录下(可以根据个人习惯改变) 1.更新系统软件包 执行命令: yum update -y 2.安装软件管理包和...

全栈攻城狮的博客 2062

在CentOS服务器上部署Django+vue项目

Django项目在Linux服务器上部署和躺过的坑

micaudience的博客 432

Vue+Django+Nginx+uWSGI部署生产环境 前后端分离

文章目录Vue+Django+Nginx+uWSGI部署生产环境#0 环境#1 需求分析#2 前提条件#3 开始#3.1 部署Django#3.1.1 后端大致流程#3.2 部署Vue Vue+Django+Nginx+uWSGI部署生产环境 #0 环境 CentOS6.8 Python3.7.3 uWSGI==2.0.18 Django==2.0.7 Vue.js 2 Nginx #1 需求分...

Auto 4578

Django+Uwsgi+Nginx的生产环境部署

本文根据https://www.cnblogs.com/chenice/p/6921727.html这篇文章的讲解部署了环境,做了自己的一些修改和补充后,最终运行成功了,现总结如下:1.先按照该文章的说明一步一步安装和配置,原理都一样,只需要将你的项目对应进去就行。2.在最后一步,重启nginx时,你可能会遇到重启失败的问题,这是由于Nginx的配置文件有问题,将下面这句去掉就可以重启了(因为日志...

书灯的博客 1877

9.生产环境部署(Django+Uwsgi+Nginx)

1.目标 ◆ 机器人:nginx,80端口,机器人通过接口访问后台管理系统获取数据; ◆ 后台管理系统:nginx->uwsgi,uwsgi8088端口,nginx代理设置8001端口; 2.Django ◆ 提取静态文件:python manage.py collectstatic; ◆ 修改配置:settings.py -> DEBUG = False; 3

zhouping118的博客 2430

Nginx+Uwsgi+Django+Vue部署

                 Nginx+Uwsgi+Django+Vue部署 本文主要讲述了如何一步步在生产环境上通过Nginx部署django和vue,操作系统默认为centos7。 参考文章:https://www.jianshu.com/p/40a17070245f?d=1550538271209,该文章是需要有Django开发基础的人才能看的很清楚,对于我这种小白(只懂Java)...

chenbin666的专栏 2743

记录在阿里云部署vue+django+nginx+uwsgi前后端分离项目

vue+django前后端分离的项目部署到阿里云服务器上

qq_15347449的博客 1359
上一篇: 如何在Django中优雅的使用pyecharts设计可视化BI系统(多图表)
下一篇: scrapy进阶《封号码罗》之如何优雅的征服世界首富亚马逊(amazon.com)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值