• 前端,后端,服务器如何部署,转载


    转载原文地址https://zhuanlan.zhihu.com/p/26397148

    一,跑起一个web应用需要哪些准备

    要跑起一个web应用,它通常需要以下几样东西:

    • 服务器
    • 编程语言环境
    • 应用程序
    • 应用依赖的工具

    下面来说说它们各自的作用。

    1,首先说说服务器

    任何应用程序都是基于操作系统运行起来的,web应用也不例外。

    服务器通常包含了操作系统以及相关的服务,如网络服务,IP服务等等。对于web应用来说,服务器的主要作用在于为web应用程序的运行提供操作系统环境以及服务。

    目前服务器按操作系统可分为两大类,一类是window服务器,二是linux服务器。很显然,window服务器自带了window操作系统,linux服务器自带了linxu操作系统。

    其中linux服务器应用最为广泛,而linux服务器的操作系统有好几种,主要有RHEL、CentOS、Debian、Ubuntu、Suse。其中用的最多的莫过于ubuntu和centos系统。
    而window服务器则由于其糟糕的生态等原因而越来越不受欢迎。通常部署应用首推linux服务器。

    因此,首先你需要一个linux服务器为应用程序提供操作系统运行环境和服务。

    2,其次,编程语言环境

    所谓编程语言环境,也就是nodejs, java, php等编程语言的运行环境。

    应用程序是使用编程语言开发的,因此,应用程序的运行需要依赖于编程语言环境。

    举个例子,要运行一个nodejs后台应用,就需要有nodejs运行环境。运行一个java后台应用,就需要有java运行环境。

    有必须说明的是,一个网站的前台和后台的运行环境是不一样的。

    前台的编程语言环境在客户端(浏览器),后台的编程语言环境在服务器端。

    • 前台
      前台主要是在客户端运行的,也就是在浏览器渲染的。前台的编程语言环境就是浏览器环境,这是因为前台的编程语言主要是html,css和js,而浏览器本身内置了对html,css和js的解析。也就是说,前台应用并不需要在服务器搭建编程语言环境。

    • 后台
      后台则不同,后台应用是在服务器端运行,但服务器通常不会集成编程语言环境,因此后台应用往往需要在服务器搭建自己的编程语言环境。如果是nodejs应用,就搭建nodejs运行环境,如果是php应用,就需要搭建php运行环境,等等。

    因此,有了服务器之后,你就可以在服务器上搭建你的后台编程语言环境。

    3,应用程序

    有了服务器和编程语言环境后,就等于有了应用程序的运行基础。

    这里所指的应用程序,是你基于某种编程语言开发出来的应用。比如一个基于nodejs开发的node后台应用。

    4,依赖的工具

    有了应用程序之后,还需要搭建一些这个应用程序所依赖的工具。

    比如说,后台应用往往需要数据库来存储应用数据,比如mongodb,mysql等等。
    而前台应用往往需要nginx来做静态资源服务,nginx也可用于做代理和接口转发。

    这些都是应用程序运行所依赖的工具。

    至此,服务器,编程语言环境,应用程序,依赖的工具都具备了,可以着手部署应用了。

    二,前台部署与后台部署的不同

    这里主要讲两点不同。

    1,部署的方式不同。

    前台

    首先,前台所用的编程语言主要有html,css,js,前台代码主要生成一些静态资源文件,比如html文件,css文件,js文件等静态资源文件。

    因此,前台应用的部署实际上就是静态资源的部署。

    那么,如何在服务器上做静态资源部署呢?

    首先,前台代码生成一些静态资源文件,比如html文件,css文件,js文件等静态资源文件。

    然后把这些静态资源(前台代码)发布到服务器上的某个目录下,然后在服务器端用nginx,apache或tomcat等工具架起一层静态资源访问服务,指定当客户端(浏览器)根据域名访问时,访问这个静态资源目录下的入口文件,比如index.html。

    入口文件往往加载了一些css文件,js文件,图片等静态资源文件,因此,当访问入口文件index.html时浏览器会根据入口文件里的引用去请求服务器静态资源目录下的css文件,js文件,图片等静态资源。

    所以,当你打开一个网页的时候,通过控制台,你通常会看到下面这样的请求如上图,当访问SInn-小客栈-程序员的小黑屋的时候,实际上是浏览器请求了域名为sinn.boyagirl.com的服务器上某静态资源目录下的index.html文件并做渲染处理,在渲染时浏览器再根据index.html里面的引用去请求这个静态资源目录下的css,js,img等静态资源,并在浏览器渲染出来。

    浏览器的请求分为两类,一类是静态资源请求,比如请求html,css,js,img等静态资源,其作用在于把应用前台UI渲染出来。另一类请求则是接口请求, 也就是请求后台接口,与后台应用进行数据交互,将请求的数据赋给UI。

    以上就是前台部署和访问的全过程。

    后台

    后台应用是在服务器端运行的,因此首先需要在后端搭建该应用的编程语言环境。其次搭建该应用所依赖的工具,比如数据库,进程管理工具等等。

    以sinn的后台sinn-server为例。这是一个基于nodejs开发后台应用,使用mongodb作为数据库。

    因此,部署sinn-server,首先需要在服务器搭建nodejs运行环境。有了nodejs编程语言环境之后,还需要搭建mongodb数据库等依赖的工具。

    2,部署工具不同

    前台部署是静态资源部署,使用了nginx, apache,或者tomcat等工具。其中最常用的就是nginx。

    后台部署需要搭建编程语言环境,如果是php,java等应用,通常也还需要使用apache/tomcat搭建相应的程序服务。除此之外,后台应用往往还依赖数据库,进程管理器等应用程序工具。

    经过上面的分析之后呢,相信你已经了解到了部署一个应用程序的过程。

  • 相关阅读:
    基金进阶
    gpgj-19.高级课总结
    (10)大类资产配置一升级版股债平衡
    13.高速公路行业
    16.投资法总结以及类集团公司介绍
    08.零售类公司分析•上
    在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法
    一台电脑上含有多个ubuntu系统的卸载方法
    Linux命令每日一个
    Java UDP实现聊天功能代码
  • 原文地址:https://www.cnblogs.com/simadoudou/p/12467301.html
Copyright © 2020-2023  润新知