Linux rsync over SSH,HTML+CSS部署远程秒杀!

首先配置SSH免密登录,生成密钥对并复制公钥至远程服务器,确保无密码安全连接;接着使用rsync通过SSH加密通道同步文件,利用增量传输提升效率,并可添加–delete和–progress参数实现目录一致与进度查看;然后创建本地部署脚本deploy.sh,封装构建与同步命令,赋予执行权限后一键自动化部署;最后在远程服务器上设置目标目录的所有者为www-data并配置755权限,确保Web服务正常访问。

linux rsync over ssh,html+css部署远程秒杀!

如果您需要在远程服务器上部署HTML+CSS静态资源,并确保文件同步的高效与安全,可以使用rsync通过SSH进行传输。这种方式不仅加密传输过程,还能实现增量同步,极大提升部署效率。以下是具体操作步骤:

一、配置SSH免密登录

为了实现自动化部署,避免每次输入密码,需配置本地主机到远程服务器的SSH免密登录。该方法基于公钥认证机制,提升连接的安全性与便捷性。

1、在本地终端执行 ssh-keygen -t rsa -b 4096 生成SSH密钥对,按提示保存至默认路径。

2、使用命令 ssh-copy-id user@remote_host 将公钥复制到目标服务器,替换 user 为远程用户名,remote_host 为服务器IP或域名。

立即学习“前端免费学习笔记(深入)”;

3、测试连接:运行 ssh user@remote_host,若无需密码即可登录,则配置成功。

二、使用rsync通过SSH同步文件

rsync结合SSH可在加密通道中高效同步本地HTML+CSS文件至远程服务器。其支持差异传输,仅发送变更部分,显著减少部署时间。

1、执行基础同步命令:rsync -avz -e ssh ./dist/ user@remote_host:/var/www/html/,其中 ./dist/ 为本地构建目录,/var/www/html/ 为远程网站根目录。

2、添加 –delete 参数以删除远程端多余文件,保持目录完全一致:rsync -avz –delete -e ssh ./dist/ user@remote_host:/var/www/html/

3、如需查看传输进度,加入 –progress 参数,实时显示每个文件的同步状态。

三、设置本地脚本自动化部署

将重复的rsync命令封装为本地脚本,可一键完成构建与部署,适用于频繁更新的前端项目。

1、在项目根目录创建部署脚本 deploy.sh,写入构建与同步指令。

2、脚本内容示例:
#!/bin/bash
npm run build
rsync -avz –delete -e ssh ./dist/ user@remote_host:/var/www/html/

3、赋予脚本执行权限:chmod +x deploy.sh,之后运行 ./deploy.sh 即可自动完成全流程。

四、配置远程服务器目录权限

确保远程服务器上的目标目录具有正确的读写权限,防止因权限不足导致同步失败或网页无法访问。

1、登录远程服务器,执行 sudo chown -R www-data:www-data /var/www/html/ 将目录所有者设为Web服务用户(如www-data)。

2、设置安全权限:sudo chmod -R 755 /var/www/html/,保证文件可读但不可随意修改。

3、确认SELinux或AppArmor等安全模块未阻止文件访问,必要时调整策略规则。

以上就是Linux rsync over SSH,HTML+CSS部署远程秒杀!的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1599287.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 13:39:52
下一篇 2025年12月23日 13:39:59

相关推荐

  • Linux Debian用Gulp自动化,CSS编译HTML零等待!

    首先安装Node.js与npm,再初始化项目并安装Gulp及插件,接着配置gulpfile.js定义Sass编译与浏览器同步任务,最后通过gulp命令启动自动化流程,实现CSS即时编译与HTML实时更新。 如果您希望在Linux Debian系统中通过Gulp实现自动化工作流,以达到CSS即时编译、…

    2025年12月23日
    000
  • Mac pfctl防火墙放行,CSS外部加载HTML无阻!

    首先确认 pfctl 防火墙是否启用,检查规则是否阻止了端口 80 或 443 的流量;接着修改 /etc/pf.conf 文件,添加允许出站访问 HTTP/HTTPS 的规则;然后重新加载规则使配置生效;最后可通过临时禁用防火墙验证问题是否由 pfctl 导致,并重新启用以应用修正后的规则。 如果…

    2025年12月23日
    000
  • Mac Spotlight索引CSS,HTML文件秒搜配对!

    首先检查Spotlight隐私设置确保文件夹未被排除,1、进入系统设置“Siri与聚焦”→“隐私”,移除目标文件夹;2、通过添加并删除隐私列表项重建索引;3、确认HTML和CSS文件类型正确识别;4、使用终端mdimport命令手动导入元数据;5、创建智能文件夹按种类或扩展名自动聚合文件。 如果您希…

    2025年12月23日
    000
  • Linux QEMU模拟器,Mac HTML+CSS跨平台验证!

    可通过QEMU在Linux上模拟macOS测试网页渲染。首先安装QEMU及相关工具,下载OpenCore引导和macOS恢复镜像,创建64GB磁盘镜像并配置启动脚本;接着运行QEMU进入OpenCore引导界面,选择安装macOS,使用磁盘工具格式化虚拟磁盘为APFS后完成系统安装;系统启动后设置用…

    2025年12月23日
    000
  • Linux lighttpd配置,HTML引用CSS响应如电!

    首先确保MIME类型正确配置,通过启用mod_mime模块并添加“.css”对应“text/css”类型;其次启用mod_alias和mod_staticfile模块,配置静态文件路径映射,将CSS文件存放于指定目录并通过URL正确引用;最后加载mod_setenv模块,设置Cache-Contro…

    2025年12月23日
    000
  • Mac Time Machine回滚,CSS出错HTML版本恢复!

    首先确认HTML与CSS文件版本一致,通过Time Machine恢复至同一时间点;随后清除浏览器缓存并强制刷新页面;最后检查本地服务器运行状态及日志,确保静态资源正常加载。 如果您在使用 Mac 的 Time Machine 进行系统回滚后,发现某些网站的样式显示异常,可能是由于 HTML 和 C…

    2025年12月23日
    000
  • Windows7记事本内联CSS,HTML样式融合不费力!

    可通过内联CSS在Windows 7记事本中为HTML元素设置样式:一、使用style属性直接设置样式,如设置文字颜色和字体大小;二、结合字体与背景颜色增强可读性,通过background-color、border等属性优化视觉效果;三、动态调整文本排版,利用text-align、line-heig…

    2025年12月23日
    000
  • Mac Ventura秒开CSS预览,HTML改动全屏闪现!

    关闭实时预览功能可解决Mac Ventura系统下HTML修改时页面全屏闪烁问题,依次关闭编辑器的实时预览、清除浏览器缓存并禁用硬件加速、更换默认预览应用为Safari或Firefox,必要时通过终端命令sudo killall -HUP WindowServer强制刷新图形上下文以恢复正常显示。 …

    2025年12月23日
    000
  • Mac fish shell批量,CSS媒体规则HTML适配!

    首先配置 Fish Shell 脚本批量向 HTML 文件注入视口元标签,并向 CSS 文件追加 @media 查询规则;再通过本地服务器测试页面在不同设备分辨率下的响应式效果,确保布局适配正确。 如果您在使用 Mac 上的 Fish Shell 进行批量操作时,需要结合 CSS 媒体规则实现 HT…

    2025年12月23日
    000
  • Mac Nova编辑器融合,HTML内嵌CSS零代码冗余!

    可通过Nova的代码片段、Emmet缩写、查找替换和Prettier格式化实现HTML内嵌CSS高效开发:一、创建“inline-style-block”片段快速插入常用样式;二、使用div[style]等Emmet缩写生成带样式的元素;三、用全局搜索替换清除冗余class属性;四、配置Pretti…

    2025年12月23日
    000
  • 深入理解React项目中导航栏Logo的优化与布局

    本教程详细探讨了在react项目中调整导航栏logo的多种css策略,旨在解决logo裁剪或导航栏宽度异常增加的问题。文章涵盖了使用`calc()`进行动态尺寸调整、结合`position: relative`和`position: absolute`进行精确定位,以及利用flexbox实现响应式布…

    2025年12月23日
    000
  • 优化 Pagedown HTML 输出页边距:解决顶部空白问题

    在使用 pagedown 生成可打印的 html 文档时,传统的 css 元素边距设置无法有效控制页面布局的整体空白区域,特别是顶部的空白。本文将深入讲解 pagedown 如何利用 css paged media module 中的 `@page` 规则来精确调整页面的物理边距,包括顶部、底部、左…

    2025年12月23日
    000
  • 使用 mutt 和 HTML 在电子邮件正文中嵌入图片的专业指南

    本教程详细阐述了如何通过 `mutt` 客户端在 html 邮件正文中嵌入图片,重点解决了传统方法(如 `cid:` 或本地路径)在现代邮件服务中可能导致图片无法显示或作为附件的问题。核心解决方案是利用图片的公共 url,结合 `mutt` 的 html 内容类型设置,确保图片能够正确加载并显示在邮…

    2025年12月23日
    000
  • 优化HTML表单action属性:应对代码规范与长URL挑战

    本文探讨了在html表单中处理过长action url的有效策略,以满足代码规范工具如sonarcloud的行长度限制。针对直接换行无效的问题,文章提出了三种解决方案:优化url结构使其更简洁、在后端预处理并动态生成url,以及灵活评估代码规范的适用性。旨在帮助开发者在保持代码整洁的同时,有效管理复…

    2025年12月23日
    000
  • React组件中利用map函数高效渲染嵌套对象数组内容的实践指南

    本教程旨在指导开发者如何在React组件中利用`map`函数正确且高效地渲染嵌套对象数组(如评论列表)中的数据。文章将通过一个具体的案例,详细解析如何访问`map`回调函数中每个迭代项的属性,避免常见的错误,并提供清晰的代码示例和最佳实践,确保列表渲染的准确性和性能。 引言:理解React中的列表渲…

    2025年12月23日
    000
  • 使用Python自动化生成HTML文件:结合Excel数据与Dominate库

    本文将详细介绍如何利用python自动化生成html文件,特别适用于从excel等结构化数据源批量创建静态网页。我们将核心关注`dominate`库,一个用python代码直接构建html文档的强大工具,并结合实际需求,演示如何读取数据、动态生成内容,并输出为独立的html文件,从而实现高效的网页内…

    2025年12月23日 好文分享
    000
  • JavaScript中动态加载和播放本地视频文件的实践指南

    本文旨在解决javascript中动态加载本地视频文件时遇到的常见问题,特别是当尝试使用`url.createobjecturl`结合字符串路径创建blob时导致的播放失败。我们将详细介绍如何通过原生javascript动态创建和配置“及“元素,从而正确地将本地视频文件嵌入并播放到网页…

    2025年12月23日
    000
  • 实现页面加载预加载器:确保背景媒体完全加载后优雅消失的教程

    本教程将指导您如何创建一个页面预加载器,以在网站内容(特别是背景视频或大型图像)完全加载之前显示加载动画。我们将探讨传统的 window.onload 局限性,并提供一个基于 jquery 的解决方案,通过引入额外的延迟,确保预加载器在所有关键媒体加载完成后才平滑消失,从而优化用户体验。 页面预加载…

    2025年12月23日
    000
  • 如何在JavaScript中播放本地或Blob视频文件

    本文旨在详细指导如何在JavaScript中播放视频文件,涵盖两种主要场景:直接通过文件路径播放以及利用Blob URL播放动态获取或生成的数据。文章将纠正常见的误区,提供清晰的代码示例,并强调MIME类型、资源释放及错误处理等关键注意事项,帮助开发者构建稳定的视频播放功能。 在Web开发中,播放视…

    2025年12月23日
    000
  • 如何将Python后端逻辑与Django和HTML进行集成

    本教程旨在指导初学者如何将独立的Python命令行应用程序转换为基于Django的Web应用。文章将详细阐述如何通过Django的视图、URL配置和表单系统,将Python逻辑与HTML前端进行交互,实现用户输入捕获和结果展示。重点在于重构Python代码以适应Web环境,并利用Django For…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信