一个网站做seo百度客户端手机版
2026/4/16 9:25:55 网站建设 项目流程
一个网站做seo,百度客户端手机版,手机网站 生成app,php网站开发试题及答案在家办公、异地协作越来越普遍。 但开发环境不只是写代码#xff0c;还要连数据库、访问测试服务器、同步代码。这篇分享一下我的远程开发环境搭建经验。核心需求 远程开发要解决几个问题#xff1a; 代码同步#xff1a;本地和服务器代码一致数据库连接#xff1a;连上公司…在家办公、异地协作越来越普遍。但开发环境不只是写代码还要连数据库、访问测试服务器、同步代码。这篇分享一下我的远程开发环境搭建经验。核心需求远程开发要解决几个问题代码同步本地和服务器代码一致数据库连接连上公司/测试环境的数据库内部服务访问访问内网的各种服务文件传输大文件快速传输代码同步方案方案一Git为主最简单的方式代码全靠Git同步。# 家里gitpull origin develop# 改代码gitpush origin develop# 公司gitpull origin develop问题频繁commit历史会很乱改到一半的代码不好push冲突处理麻烦适合代码改动不频繁的场景方案二VSCode Remote SSH直接连到服务器上开发代码在服务器上。// .ssh/configHost dev-server HostName 服务器IPUser yourname IdentityFile~/.ssh/id_rsaVSCode安装Remote-SSH插件直接连上去写代码。优点代码在服务器不用同步编译、运行都在服务器本地电脑轻松多人协作方便缺点依赖网络断网就GG服务器要有公网IP或能SSH访问方案三rsync双向同步本地写代码自动同步到服务器。# 本地→服务器rsync-avz--exclude.git--excludenode_modules\~/project/ server:/home/user/project/# 监听文件变化自动同步fswatch-o~/project|xargs-n1-I{}rsync-avz~/project/ server:/home/user/project/或者用lsyncd-- /etc/lsyncd/lsyncd.conf.luasync{default.rsync,source/home/user/project,targetserver:/home/user/project,rsync{archivetrue,compresstrue,_extra{--exclude,.git,--exclude,node_modules}}}适合需要本地IDE 服务器环境的场景数据库连接方案方案一SSH隧道最常用的安全方式。# 建立隧道ssh-L3307:localhost:3306 userserver-N# 然后本地连接mysql-h127.0.0.1-P3307-udbuser-p或者写个脚本一键启动#!/bin/bash# connect_db.sh# 启动SSH隧道后台运行ssh-f-N-L3307:localhost:3306 userdev-server# 启动Redis隧道ssh-f-N-L6380:localhost:6379 userdev-serverecho隧道已建立echoMySQL: localhost:3307echoRedis: localhost:6380Navicat/DataGrip配置SSH隧道SSH: Host: 服务器IP Port: 22 User: yourname Auth: Private Key MySQL: Host: localhost (注意是localhost) Port: 3306方案二VPN/组网如果经常连多个内部服务每次建SSH隧道很麻烦。更好的方式是把你的电脑加入公司内网你的电脑 ←→ 虚拟网络 ←→ 公司内网 ↓ 直接连内网IP我用的是星空组网装个客户端就能把不同地方的设备组成一个虚拟局域网。配置好之后# 直接连内网地址mysql-h192.168.1.100-udbuser-p# Redis也是redis-cli-h192.168.1.101# 甚至可以访问内部Web服务curlhttp://192.168.1.102:8080/api/test就像在公司一样。方案三本地数据库 定期同步如果网络不稳定可以在本地跑一个数据库副本。# 定期从测试环境导出mysqldump-htest-server-uuser-p--databasestest_dbbackup.sql# 导入到本地mysql-uroot-pbackup.sql可以写个脚本定时同步#!/bin/bash# sync_db.sh# 导出测试环境数据脱敏mysqldump-htest-server-uuser-p\--databasestest_db\--ignore-tabletest_db.sensitive_table\/tmp/sync.sql# 导入本地mysql-uroot-p/tmp/sync.sqlecho数据同步完成:$(date)内部服务访问除了数据库开发中还要访问各种内部服务Git仓库Jenkins/CI文档系统测试环境APISSH多隧道# 一个SSH连接建多个隧道ssh-L3307:db-server:3306\-L6380:redis-server:6379\-L8081:jenkins:8080\-L9090:prometheus:9090\userjump-server-NSSH配置文件# ~/.ssh/config Host work HostName jump-server-ip User yourname IdentityFile ~/.ssh/id_rsa LocalForward 3307 db-server:3306 LocalForward 6380 redis-server:6379 LocalForward 8081 jenkins:8080然后只需要sshwork-N组网方案组网后所有内部服务都可以直接访问不用一个个配隧道。文件传输小文件scp/rsync# 上传scplocal_file userserver:/path/# 下载scpuserserver:/path/remote_file ./# 目录同步rsync-avz--progressuserserver:/data/ ./data/大文件压缩传输# 服务器端压缩tar-czf- /large/dir|sshuserservercat backup.tar.gz# 或者用rsync的压缩rsync-avz--compress-level9large_file userserver:/path/断点续传# rsync支持断点续传rsync-avz--partial--progresslarge_file userserver:/path/我的远程开发环境分享一下我的配置网络家里电脑 ←→ 星空组网 ←→ 公司服务器 ←→ 测试环境 ←→ 家里NAS组网后所有设备都在一个虚拟网段比如10.26.0.x。VSCode配置// settings.json{remote.SSH.remotePlatform:{dev-server:linux},remote.SSH.useLocalServer:false}# ~/.ssh/config Host dev-server HostName 10.26.0.10 # 组网内网IP User dev IdentityFile ~/.ssh/id_rsa数据库连接直接连内网IP不用隧道MySQL: 10.26.0.11:3306 Redis: 10.26.0.12:6379 MongoDB: 10.26.0.13:27017Git仓库# 直接用内网地址gitclone git10.26.0.20:project/repo.git效果在家写代码和在公司一样不用每次启动一堆SSH隧道网络延迟也还可以写代码体验正常安全注意事项远程开发要注意安全SSH密钥认证禁用密码登录敏感数据不要存本地或者加密存储使用跳板机不直接暴露内网服务器VPN/组网走加密通道定期更换密钥# 禁用SSH密码登录# /etc/ssh/sshd_configPasswordAuthentication no总结远程开发环境搭建的几个方案需求简单方案进阶方案代码同步GitVSCode Remote / rsync数据库SSH隧道VPN/组网直连内部服务SSH多隧道VPN/组网文件传输scprsync断点续传选哪个看你的情况偶尔远程 → SSH隧道足够长期远程 → 组网方案更省心多人协作 → VSCode Remote Git远程开发已经是常态了花点时间把环境配好效率能高很多。有问题评论区聊。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询