最新自动激活python虚拟环境
实现原理
新建Microsoft.PowerShell_profile.ps1一个文件,文件名字是win10配置文件的指定用名,当启动ps的时候会自动读取$PROFILE的配置文件并执行,
在脚本中写入逻辑:检测该目录下是否存在 .venv 目录,如果存在则尝试执行激活.venv目录下虚拟环境脚本,来激活虚拟环境,且当切换目录也会检测,但前提会检测目录是否有.venv文件夹,且创建虚拟环境的时候要统一虚拟环境的名字,或者修改脚本检测文件夹名字来实现自动激活虚拟环境,
使用简述
在powershell执行$PROFILE查看配置脚本路径,(只是输出脚本路径,并不真的存在这个文件)所以要自己创建,使用创建脚本或自己创建这个文件
把脚本内容的代码贴入进去,即可完成配置,
在指定目录进入ps,测试是否进入了虚拟环境.
脚本代码创建文件脚本1234567891011121314# 确保目录存在$profileDir = Split-Path $PROFILE -Parentif (-not (Test-Path $profileDir)) { New-Item -I ...
重写nginx配置
关于删除修改指定域名配置文件(及符号链接)的说明1234567891011121314151617181920212223# 步骤1:先删除sites-enabled中的符号链接(优先删除,避免Nginx识别无效配置)sudo rm /etc/nginx/sites-enabled/dda.cc# 步骤2:再删除sites-available中的源配置文件(可选,若后续不再使用该配置)sudo rm /etc/nginx/sites-available/dda.cc# 重新编辑一下Ubuntu的配置文件sudo nano /etc/nginx/sites-available/api.ddda.cc# 创建符号链接sudo ln -s /etc/nginx/sites-available/api.ddda.cc /etc/nginx/sites-enabled/# 步骤3:检查配置语法(确认删除后无无效引用)sudo nginx -t# 步骤4:平滑重载Nginx,让删除配置的变更生效sudo systemctl reload nginxsudo systemctl restart ng ...
用户访问域名地址到服务器得过程
一、先厘清:用户访问域名的完整流程(从浏览器到FastAPI服务)首先纠正一个小误区:Nginx只负责转发HTTP请求到指定的「IP:端口」,systemd服务的作用是保障FastAPI服务持续在该端口监听运行。完整访问流程分为6步,每一步都对应你的配置:
步骤1:用户发起访问请求用户在浏览器输入 https://gi.dbba.cc(或 http://gi.dbba.cc),浏览器先通过DNS解析,将域名 gi.dbba.cc 转换为你的服务器公网IP(这一步在服务器外部完成,由域名服务商提供解析服务)。
步骤2:请求到达服务器(防火墙/安全组放行)请求通过互联网发送到你的服务器,首先经过服务器防火墙(如ufw)和云服务器安全组(如阿里云/腾讯云安全组),只有80端口(HTTP)和443端口(HTTPS)被放行(你已配置对应端口,请求才能进入服务器内部)。
步骤3:Nginx 80端口拦截,自动跳转HTTPS你的第二个Nginx server块监听80端口,配置了「HTTP转HTTPS」逻辑:
123if ($host = gi.dbba.cc) { return 3 ...
删除win10开始菜单已经卸载程序的快捷目录和快捷方式
方法一:直接手动删除(最直接)这是最推荐首先使用的方法。
打开开始菜单,找到那个残留的快捷方式(例如 oy3.10)。
右键单击这个快捷方式。
选择“更多” -> “打开文件位置”。
这个操作会直接定位到这个快捷方式在“开始菜单”文件夹中的实际位置。
在打开的窗口中,直接按 Delete 键删除这个快捷方式文件,或者右键点击选择“删除”。
关闭所有窗口,重新打开开始菜单查看,残留项应该已经消失。
方法二:清理“开始菜单”文件夹(站主试验最彻底)如果方法一不生效,或者你想彻底检查,可以手动访问“开始菜单”文件夹。
同时按下 Win + R 键,打开“运行”对话框。
输入以下路径之一,然后按回车:
当前用户的开始菜单:输入 %appdata%\Microsoft\Windows\Start Menu\Programs 然后回车。
所有用户的开始菜单:输入 C:\ProgramData\Microsoft\Windows\Start Menu\Programs 然后回车。
ProgramData 文件夹通常是隐藏的,如果提示找不到,请先确保在文件资源管理器的“查看”选项卡中勾 ...
修改ps1文件的关联
通过注册表修改默认关联
打开注册表编辑器win + r 输入 regedit
导航到
1HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell\Open\Command
修改值为
1"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -ExecutionPolicy Bypass -File "%1"
ubuntu后台服务管理
应用案例:后台服务管理第一种方式:使用nohup后台运行服务1234567891011# 进入项目目录cd ~/project# 激活虚拟环境source venv/bin/activate# 使用nohup后台启动服务,并将输出重定向到日志文件nohup uvicorn api_active:app --host 0.0.0.0 --port 8000 --workers 4 > api.log 2>&1 &# 显示后台作业编号echo "服务已启动,作业ID: $!"
第二种方式:使用screen管理会话(推荐用于开发)123456789101112131415161718# 安装screen(如果未安装)sudo apt update && sudo apt install screen# 创建名为api的screen会话screen -S api# 在screen会话中启动服务cd ~/projectsource venv/bin/activateuvicorn api_active:app --host 0.0. ...
解决ssh无法登录的问题
Ubuntu服务器22端口无法访问的排查与修复方案一、先确保内部原因配置正确零0 查看所有的配置文件123# 搜索主配置+子配置中所有PasswordAuthentication行sudo grep -r "PasswordAuthentication" /etc/ssh/
✅ 若输出包含 /etc/ssh/sshd_config.d/xxx.conf:PasswordAuthentication yes → 子配置覆盖了主配置;✅ 若输出显示主配置里有两行 PasswordAuthentication(一行 yes,一行 no)→ 重复配置导致生效的是 yes。如果输出多行一样的passworAuthenticationd配置则说明,存在多个ssh配置文件,可能配置的ssh配置文件不是最优先级最前面的文件所以要修改所有的ssh配置腾讯云子配置文件1sudo nano /etc/ssh/sshd_config.d/50-cloud-init.conf不建议使用主配置把这个tx云文件删除后,是会读取主配置,但是服务器重启后这个文件仍会自动创建
一 -开启密钥登录(修改 ...
解决Python版本共存问题
解决Python版本共存问题1. py与python命令的区别1.1 Python解释器与启动器的概念Python解释器
定义与功能:Python代码的”翻译官”和”执行者”,将Python代码转换为计算机可执行的机器码
安装与路径:
安装时默认路径如C:\Python310\python.exe(Windows)或/usr/bin/python3.10(Linux/macOS)
虚拟环境会复制基础解释器到环境目录(如myenv\Scripts\python.exe)
使用场景:
直接运行脚本:python script.py
交互式编程:命令行输入python进入>>>提示符
依赖管理:虚拟环境绑定特定版本解释器,避免项目冲突
Python启动器(py.exe)
定义与功能:Windows系统上的Python”调度员”,帮助选择合适的Python解释器版本
核心特性:
版本管理:支持多版本切换(如py -0p列出所有已安装版本)
路径智能选择:优先使用用户级安装,避免系统级版本冲突
简化命令:无需记忆完整解释器路径,直接py script.py运行
安 ...
ubuntu安装nginx并绑定域名
FastAPI应用域名绑定配置指南前提条件
已拥有一个域名(如:yourdomain.com)
域名已解析到服务器IP地址(175.27.253.177)
服务器已开放80/443端口
FastAPI应用正在端口8000上运行
配置步骤步骤1:安装Nginx1234567891011121314# 更新系统包sudo apt update && sudo apt upgrade -y# 安装Nginxsudo apt install nginx -y# 启动Nginx服务sudo systemctl start nginx# 设置Nginx开机自启sudo systemctl enable nginx# 检查Nginx状态sudo systemctl status nginx
步骤2:创建Nginx反向代理配置创建Nginx配置文件:
1sudo nano /etc/nginx/sites-available/yourdomain.com
将以下内容粘贴到配置文件中(替换yourdomain.com为实际域名):
12345678910111213141516serv ...
py常用命令大全
Python常用命令大全1. Python解释器基本命令1.1 Python版本查看1234567# 查看Python版本python --versionpython3 --version# 查看详细版本信息python -Vpython3 -V
1.2 Python解释器启动123456# 启动Python交互式解释器pythonpython3# 启动IPython交互式解释器(如果已安装)ipython
1.3 执行Python脚本123456# 执行Python脚本python script.pypython3 script.py# 执行带参数的Python脚本python script.py arg1 arg2
1.4 执行Python代码片段123# 直接执行Python代码片段python -c "print('Hello, World!')"python3 -c "import os; print(os.getcwd())"
2. pip包管理2.1 pip版本管理12345678910# 查看pip版本pip ...