所有分类
  • 所有分类
  • 游戏源码
  • 网站源码
  • 单机游戏
  • 游戏素材
  • 搭建教程
  • 精品工具

源码上传服务器详细步骤|阿里云新手教程|零失败部署指南

源码上传服务器详细步骤|阿里云新手教程|零失败部署指南 一

文章目录CloseOpen

准备阶段:3样东西提前备好,少一样都可能失败

部署源码前,你得先把这几样东西准备好,就像做饭前要备齐食材一样,缺一样都可能让整个流程卡壳。我见过太多人兴冲冲开始部署,结果做到一半发现”哎呀,服务器密码忘了”或者”工具没下载”,来回折腾反而浪费时间。

服务器基础配置:从购买到能用,这3个地方要检查

不管你是刚买的阿里云服务器,还是已经用了一段时间的旧服务器,部署前一定要确认这几点。去年有个做设计的朋友,服务器买好了,源码也传上去了,但网站就是打不开,后来发现是安全组没开80端口,白白折腾了一下午——这种低级错误完全可以避免。

首先看实例状态:登录阿里云控制台,进入”云服务器ECS”,找到你的服务器实例,确保状态是”运行中”(绿色的),如果是”已停止”(灰色),点”启动实例”等几分钟就行。然后记一下公网IP,这串数字就像服务器的”门牌号”,后面连接和访问都要用到,最好复制保存到记事本里。

最容易被忽略的是安全组配置。服务器默认只开放22端口(用于远程连接),但网站访问需要80端口(HTTP)和443端口(HTTPS),如果是小程序后端或API项目,可能还需要3000、8080这类端口。你可以进入服务器的”安全组”设置,点”配置规则”,手动添加这几个端口:协议选”TCP”,端口范围填”80/80″,授权对象填”0.0.0.0/0″(允许所有人访问),备注写”网站访问”。阿里云官方文档里也强调过:”Web服务部署前需确保80/443端口在安全组中开放,否则外部无法访问”(查看阿里云安全组文档{rel=”nofollow”})。

最后检查登录凭证:如果你是用”密码”登录服务器,确认密码没记错(忘了可以在控制台重置);如果用”密钥对”,确保本地保存了.pem或.ppk格式的密钥文件,而且权限设置正确(Windows右键文件属性,安全里只保留当前用户权限;Mac/Linux用命令chmod 400 密钥文件名)。

本地工具:3类工具按需选,新手优先用可视化工具

传源码到服务器的工具分两类:可视化工具(点点鼠标就能传)和命令行工具(需要敲代码)。我 新手优先用可视化工具,上手快、不容易出错;如果你熟悉命令行,也可以用,但要注意别输错命令——之前有个朋友用scp命令传文件,把服务器路径输成了本地路径,结果把自己电脑里的文件删了,差点哭出来。

下面这张表整理了不同系统适用的工具,你可以根据自己的情况选:

工具类型 推荐工具 适用系统 优点 注意事项
FTP客户端(可视化) FileZilla Windows/Mac/Linux 免费、功能全、支持断点续传 连接时端口填21(FTP)或22(SFTP)
FTP客户端(可视化) WinSCP Windows 界面简洁、支持拖拽、集成命令行 首次连接可能提示”主机密钥未知”,选”是”即可
FTP客户端(可视化) Transmit Mac 颜值高、传输速度快、支持多种协议 付费软件(约300元),有7天试用
命令行工具 scp命令 Mac/Linux/Windows(PowerShell) 无需安装、适合批量操作 命令格式:scp 本地文件路径 用户名@IP:服务器路径

表:不同系统适用的源码上传工具对比,新手优先推荐FileZilla(免费且跨平台)

除了文件传输工具,你可能还需要远程连接工具来执行命令(比如解压文件、改权限)。Windows用户可以用PuTTY(免费),Mac/Linux直接用系统自带的Terminal。如果觉得命令行麻烦,也可以装个宝塔面板——这是个可视化服务器管理工具,能帮你一键安装Nginx、MySQL,还能直接在网页上上传文件、改权限,对新手特别友好。安装方法很简单,用远程工具连接服务器后,输入宝塔的安装命令(CentOS系统:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh),按提示操作5分钟就能装好,后面部署PHP、WordPress这类项目会方便很多。

源码本地整理:这3类文件别上传,否则白忙活

源码上传前,一定要在本地做好”精简”——我之前帮一个做React项目的朋友部署,他直接把整个项目文件夹拖进去,结果node_modules占了2G多,传了半小时还出错,后来删掉重传,10分钟就搞定了。你可以按这几步整理:

先在本地确认项目能正常运行:比如静态网站打开index.html看看有没有乱码,PHP项目用XAMPP跑一下有没有报错,Node.js项目用npm start测试能不能启动。本地都跑不起来的项目,传到服务器肯定也不行,别浪费时间。

然后压缩成zip包(推荐zip格式,服务器上解压命令最通用)。压缩时注意排除这几类文件:

  • 依赖文件夹:比如node_modules(前端项目)、vendor(PHP项目),这些可以传到服务器后再用命令安装(npm installcomposer install),既能减小文件体积,又能避免本地依赖和服务器环境不兼容的问题;
  • 版本控制文件:.git文件夹、.gitignore,这些文件对运行没影响,传上去反而占空间;
  • 编辑器配置文件:比如.vscode、.idea,以及日志文件、测试数据等临时文件。
  • 最后记住源码的入口文件:静态网站通常是index.html,PHP项目是index.php,Node.js项目可能是app.js或server.js——后面配置服务器时需要指定这个入口文件,不然访问时会提示”403 Forbidden”(没有权限)或”404 Not Found”(找不到文件)。

    实操步骤:从连接到验证,8步走完部署全流程

    准备工作做好后,接下来就是实际操作了。我把整个流程拆成了8步,每步都标了”重点注意事项”,你跟着做就行。如果中间遇到问题,别慌——我会把常见错误和解决办法也列出来,都是我帮人部署时踩过的坑,照着改基本都能解决。

    第1步:连接服务器(以FileZilla为例,30秒搞定)

    打开FileZilla,顶部有个”快速连接”栏,需要填4个信息:

  • 主机:填服务器的公网IP(就是前面让你记下来的那串数字,比如120.78.xx.xx);
  • 用户名:阿里云默认用户名是root(Linux系统)或Administrator(Windows系统,不过很少有人用Windows服务器部署网站,这里默认按Linux讲);
  • 密码:服务器的登录密码(如果用密钥登录,点”文件-站点管理器”,选”SFTP”协议,在”密钥文件”里选择本地的密钥文件);
  • 端口:用FTP协议填21,SFTP协议填22(推荐SFTP,比FTP更安全,服务器默认支持)。
  • 填完点”快速连接”,如果一切正常,底部状态栏会显示”状态:已连接”,左侧是你本地电脑的文件(可以导航到源码所在的文件夹),右侧是服务器的文件(默认显示/root目录)。

    常见错误及解决办法

  • “连接超时”:检查IP有没有输错,服务器是不是”运行中”,安全组有没有开22端口(SFTP需要22端口);
  • “服务器拒绝访问”:确认用户名是root(不是自己注册的阿里云账号),密码有没有记错(可以在阿里云控制台重置实例密码);
  • “无法使用纯FTP不安全的服务器,推荐使用SFTP”:这是FileZilla的安全提示,点”确定”后在站点管理器里把协议改成SFTP,端口填22即可。
  • 第2步:上传源码(拖放就能传,大文件注意这一点)

    连接成功后,先在服务器端创建一个存放源码的文件夹——推荐放在/www/wwwroot(如果装了宝塔面板,这个目录是默认网站根目录),没有的话可以自己建(右键-创建目录,比如取名myproject)。然后在本地找到整理好的源码压缩包(比如project.zip),直接拖到右侧服务器的myproject文件夹里,底部会显示传输进度。

    如果你的源码比较大(超过100MB), 勾选FileZilla的”编辑-设置-传输-启用断点续传支持”,这样传输中断后可以继续传,不用从头开始。 传输时最好别断开网络或关闭软件——我之前帮一个客户传一个500MB的视频网站源码,传了一半他不小心关了FileZilla,结果重传又花了20分钟,特别耽误事。

    第3步:解压源码(命令行3行代码搞定,不会命令用宝塔)

    文件传完后,需要把压缩包解压到服务器上。如果你装了宝塔面板,直接在面板的”文件”里找到压缩包,右键”解压”就行;没装的话,用远程连接工具(PuTTY或Terminal)连接服务器,输入命令操作。

    以Linux系统为例,先进入存放压缩包的目录:cd /www/wwwroot/myproject(把路径换成你自己的文件夹),然后输入解压命令:unzip project.zip(如果提示”command not found”,说明没装unzip,先输入yum install -y unzip安装,再解压)。解压完成后,服务器文件夹里会多出一个和压缩包同名的文件夹,里面就是你的源码文件了。

    小技巧

    :如果想把文件直接解压到当前目录(不生成子文件夹),可以用unzip project.zip -d ./;如果是tar.gz格式的压缩包,用tar -zxvf project.tar.gz命令解压。

    第4步:配置文件权限(这步错了,网站可能打不开或被黑)

    文件解压后,一定要检查权限——很多人部署后网站打不开,或者能打开但样式错乱,十有八九是权限没配对。服务器上的文件权限用数字表示,比如755、644,你不用记太复杂的规则,记住这两个就行:

  • 文件夹权限:推荐755(表示所有者可读可写可执行,其他用户可读可执行);
  • 文件权限:推荐644(表示所有者可读可写,其他用户只读)。
  • 设置方法很简单,用远程工具连接服务器后,进入源码所在目录,输入命令:

    chmod -R 755 ./

    (设置当前目录下所有文件夹为755权限) find ./ -type f -exec chmod 644 {} ;(设置当前目录下所有文件为644权限)

    为什么不能用777权限?因为777表示”所有人都能读写执行”,相当于把服务器大门敞开——上个月帮一个做WordPress博客的朋友部署,他图省事设了777,结果第二天网站就被挂马了,后来改成755+644才没事。阿里云官方文档也明确提醒:”生产环境中应避免使用777权限,这可能导致文件被恶意篡改”(查看阿里云权限配置文档{rel=”nofollow”})。

    第5步:不同项目类型的额外配置(静态/PHP/Node.js各有讲究)

    源码传好、权限配完后,大部分静态网站(只有HTML/CSS/JS)已经能访问了——在浏览器输入服务器公网IP,应该能看到你的网页。但如果是动态项目(PHP、Node.js、Python等),还需要一些额外步骤。

    静态网站(HTML/CSS/JS)

    :最简单,直接访问IP即可。如果想绑定域名,在阿里云域名控制台做”域名解析”(添加A记录,记录值填服务器IP),等10分钟生效后,就能用域名访问了。 PHP项目(比如WordPress、ThinkPHP):需要服务器安装PHP和Web服务器(Nginx或Apache)。如果你装了宝塔面板,在”软件商店”搜索”LNMP”(Linux+Nginx+MySQL+PHP)一键安装,然后在”网站”里”添加站点”,域名填你的域名(或IP),根目录选源码所在的文件夹(比如/www/wwwroot/myproject),PHP版本选项目需要的版本(比如7.4),提交后就能访问了。 Node.js项目(比如Express、Vue+Node后端):需要先在服务器安装Node.js。用远程工具连接服务器后,输入curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -(安装Node 16.x版本),再输入apt install -y nodejs,装完用node -v检查是否安装成功。然后进入源码目录,输入npm install安装依赖,最后用node app.js(app.js换成你的入口文件)启动项目。不过这样关闭命令行后项目会停止,推荐用pm2工具后台运行:npm install -g pm2,然后pm2 start app.js,这样就算断开连接,项目也能一直运行。

    第6步:验证部署结果(3种方式检查是否成功)

    部署完别急着关工具,一定要验证是否正常运行。你可以用这3种方法检查:

  • 浏览器访问:输入服务器IP或域名,看能不能打开网页,点击链接、提交表单测试功能是否正常;
  • 查看源码文件:用远程工具连接服务器,检查源码文件是否完整(比如index.html、app.js是否存在);
  • 看服务器日志:如果打不开,在宝塔面板的”网站-日志”里看错误日志,比如”404″可能是路径错了,”500″可能是代码有bug或权限不对,”502″可能是Node.js服务没启动。
  • 我上个月帮一个做在线简历的朋友部署静态网站,传完后访问IP显示”403 Forbidden”,检查发现他把源码放在了/root目录(权限严格),后来移到/www/wwwroot就好了——服务器不同目录的权限默认设置不一样,放/www/wwwroot是最稳妥的选择。

    按照这些步骤做完,你的项目应该已经能在网上访问了。如果中间遇到任何问题,比如某个步骤卡住了,或者报错不知道怎么解决,欢迎在评论区告诉我具体情况(比如用的什么工具、报错提示是什么),我看到都会回复。对了,如果你用的是腾讯云、华为云这类其他服务器,或者部署的是Python、Java这类特殊项目


    你有没有遇到过这种情况?源码明明传上去了,输服务器IP却只看到浏览器转圈圈,最后蹦出个“无法访问此网站”?我之前帮一个做个人博客的朋友排查过,他折腾了一上午,又是重装服务器又是重传源码,结果发现就是个小细节没注意——这种问题其实不用慌,按这几个方向查,90%的情况都能解决。

    先看服务器的“门禁卡”有没有开对。安全组就像服务器的防盗门,80端口(HTTP)和443端口(HTTPS)是网站的“大门钥匙”,没开的话外面根本进不来。你登录阿里云控制台,点“云服务器ECS”,找到你的服务器实例,旁边有个“安全组”选项,点进去选“配置规则”,然后点“手动添加”。协议选TCP,端口范围填“80/80”,授权对象写“0.0.0.0/0”(意思是所有人都能访问),备注就写“网站访问”,443端口也这么加一遍。我那个朋友就是漏了这步,安全组只开了22端口(远程连接用的),结果外面根本访问不到,加完端口5分钟就好了。对了,服务器本身得是“醒着”的——同样在控制台“实例”页面,看看那个绿色的小圆圈是不是写着“运行中”,如果是灰色的“已停止”,点“启动实例”等几分钟就行,别像我另一个朋友,服务器都没开就急着访问,白等半天。

    除了端口和服务器状态,入口文件搞错了也会让网站“迷路”。你想啊,服务器收到访问请求,总得知道先看哪个文件吧?静态网站(就HTML/CSS/JS那种)得有index.html,PHP项目(比如WordPress)得有index.php,Node.js项目可能是app.js或者server.js——这些文件得放在服务器的“根目录”里,比如/www/wwwroot或者你自己建的项目文件夹根目录,不能藏在子文件夹里。之前有个做在线简历的同学,把源码解压到了二级文件夹,服务器找不到index.html,就提示“403禁止访问”,后来把文件挪到根目录就好了。还有种情况,你传的是压缩包但没解压,服务器看到的是project.zip,自然打不开——记得用unzip命令解压,或者在宝塔面板里右键“解压到当前目录”,让服务器能“看到”那些源码文件。


    Windows和Mac系统分别推荐用什么工具上传源码到服务器?

    Windows系统推荐用WinSCP(免费、支持拖拽和命令行集成)或FileZilla(跨平台、功能全);Mac系统推荐FileZilla(免费)或Transmit(付费,传输速度快、界面友好)。新手优先选FileZilla,跨平台且操作简单,支持FTP和SFTP协议,能满足大部分上传需求。

    上传源码后网站打不开,提示“无法访问此网站”,可能是什么原因?

    最常见的原因有三个:①安全组未开放80/443端口(进入阿里云服务器安全组配置,添加TCP:80/443端口,授权对象设为0.0.0.0/0);②未设置正确的入口文件(比如静态网站需确保根目录有index.html,PHP项目需有index.php);③服务器未运行(登录阿里云控制台检查实例状态是否为“运行中”)。可按这三个方向依次排查。

    服务器文件权限应该设置多少?为什么不 用777权限?

    推荐文件夹权限设为755(所有者可读可写可执行,其他用户可读可执行),文件权限设为644(所有者可读可写,其他用户只读)。777权限表示“所有用户都能读写执行”,相当于开放服务器全部权限,容易被恶意篡改文件或植入病毒。阿里云官方文档明确提醒:“生产环境中应避免使用777权限,可能导致网站被挂马或数据泄露”。

    如何把域名和服务器绑定,用域名访问已部署的网站?

    分两步:①域名解析:登录阿里云域名控制台,进入“域名解析”,添加A记录(主机记录填@或www,记录值填服务器公网IP,TTL设为10分钟);②服务器绑定域名:若用宝塔面板,进入“网站-添加站点”,域名栏填你的域名(如example.com),根目录选源码所在文件夹,提交即可。解析生效后(通常10-30分钟),就能用域名访问网站了。

    源码文件太大(超过1GB),上传时总是中断或失败怎么办?

    可分三种方法解决:①分卷压缩:用WinRAR或7-Zip将源码分卷压缩(如每个分卷500MB),上传后在服务器用“cat 分卷文件* > 合并文件.zip”命令合并解压;②启用断点续传:在FileZilla设置中勾选“传输-启用断点续传支持”,中断后可继续上传;③服务器直接下载:若源码有网络链接(如GitHub仓库),用远程工具连接服务器,输入“wget 源码URL”直接下载,避免本地传输耗时。

    原文链接:https://www.mayiym.com/44448.html,转载请注明出处。
    0
    显示验证码
    没有账号?注册  忘记密码?

    社交账号快速登录

    微信扫一扫关注
    如已关注,请回复“登录”二字获取验证码