精华内容
下载资源
问答
  • Linux搭建WEB服务器.doc

    2013-03-12 21:55:51
    Linux搭建WEB服务器.doc
  • 本文将详细讲解使用Linux搭建web服务器的过程。搭建成功之后,可以通过网址:www.zhougb3.cn访问我的个人博客主页。 1.准备工作 为了让用户都可以访问我们的网站,我们需要有一台可以通过外网访问的服务器,这里...

    对于一个网站开发者而言,在经历了艰难的开发过程后,要将网站推向给用户,必须要做的一步便是部署我们的web应用,这样广大的用户才能成功访问我们的网站。目前主流的部署平台都是基于Linux的。本文将详细讲解使用Linux搭建web服务器的过程。搭建成功之后,可以通过网址:www.zhougb3.cn访问我的个人博客主页。

    1.准备工作

    为了让用户都可以访问我们的网站,我们需要有一台可以通过外网访问的服务器,这里选用的是腾讯云的服务器,安装的是Ubuntu16.04的系统。这里我们同时注册了域名,这样子用户就可以直接通过域名访问服务器,而不用输入一串生涩难记,毫无规则的IP地址。

    2.使用ssh连接远程服务器

    SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。我们使用ssh连接我们的远端腾讯云服务器,并在远端服务器上进行我们的web应用部署。在这里我们进行连接的本地机器也是Ubuntu16.04系统。ssh分为客户端和服务端,Ubuntu内置了ssh的客户端,通过在远端机器运行ssh服务端,本地就可以通过ssh客户端进行连接了。以下介绍ssh配置的具体操作。首先我们需要在远端服务器上通过命令“sudo apt-get install openssh-server”安装ssh服务端。那么问题来啦,现在我们不是还没有办法连接远端服务器,那又怎么在上面进行操作?其实,我们仍然是可以连接远端服务器的,只是不能通过ssh的方法,虽然不足够安全但是也可以进行操作的。如果购买的是腾讯云服务器,我们可以在腾讯云服务器的控制台登录上服务器,使用我们购买时设置的账号密码即可成功登录。成功在远端服务器上安装ssh后,我们回到我们本地的机器,通过命令“su - user”切换为我们以后想要用来连接远端服务器的本地用户,如果现在本地机器的用户是你想要连接远端机器的用户则不用执行该命令。接着输入命令“ssh-keygen -t rsa”生成密钥文件,在生成的过程中会提示你输入密码,此时我们按Enter键即可。这里设置的密码是用来读取密钥文件的密码,如果设定了之后每次进行ssh连接都需要输入密码才能读取密钥文件,这样就比较麻烦了。命令执行完之后会生成一个公钥文件和一个私钥文件,我们需要将生成的公钥文件拷贝到远端服务器,使用如下命令完成“scp.ssh/id_rsa.pubuser@192.168.1.100:/home/user/”。这里“.ssh/id_rsa.pub”是公钥文件的路径,“user@192.168.1.100”是远端服务器的ip地址和用户名。这里我们又回到了远程机器上,可以发现已经有了公钥文件,这时候我们在远端服务器以下命令“mv/home/user/id_rsa.pub/home/user/.ssh/authorized_keys”,如果没有相应的文件夹则要提前建立。这样子,一切配置就算完成了,我们在远端服务器执行以下命令来开启ssh服务“service sshd start”
    然后我们回到本地机器,通过执行命令“ssh user@192.168.1.100”我们就可以成功连接上远端服务器了。这时候我们就可以在本地使用ssh安全地对远程服务器进行操作了,我们首先要做的就是将我们的项目源码拷贝到远端服务器上。
    这里要注意远端服务器上的文件夹和文件的权限问题。可以通过以下命令正确设置权限“#chmod700 .ssh”“#chmod 600 authorized_keys”

    3.使用Nginx服务

    Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx能更好地帮我们处理静态资源文件。使用命令“$ sudo apt-get install nginx”安装Nginx。安装完成之后,需要我们手动编写配置文件并置于“/etc/nginx/sites-available/”文件夹下,然后在/etc/nginx/sites-enabled/目录下创建软链接,使用如下命令链接到我们的配置文件$sudo ln -s /etc/nginx/sites-available/cffilename .。每次修改完配置文件后,使用命令$ sudo /etc/init.d/nginx reload即可重新开启Nginx服务。Nginx配置文件的编写这里就不赘述了,可以查看相关文档学习。主要是编写一个处理静态资源文件还有一个处理动态请求转发的。在设定文件路径时,请使用绝对路径,否则会无法找到文件。Nginx有一个默认的配置文件default,需要把default文件下的root路径注释掉。
    使用Nginx同样要注意文件和文件夹的权限问题,否则Nginx可能没有办法读取所需要的静态资源文件。需要读取的文件夹需要有可执行的权限,否则无法进入文件夹进行读文件的操作,对于文件则要有对应的读取权限。

    4.使用supervisor管理进程

    supervisor是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisor监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,而不需要我们自己写脚本控制。对于一个长期运行的web服务器,我们的服务端代码应该一直处于正常运行的状态,使用supervisor来管理我们的服务端代码,能够很好地做到这一点。Supervisor是一个Python工具,通过执行命令“pip install supervisor”来安装,不过在此之前我们的服务器上应该安装有Python和pip包管理工具。安装完成后,我们可以使用命令“supervisord -c /etc/supervisord.conf”来启动服务。
    Supervisor安装完成后每次服务器开机时都会自动启动的,不需要我们重复开启,如果重复开启多个运行时会出错,而且报错的信息也多种多样,可能提示端口被占用。supervisor会把配置文件中的进程全部运行。我们可以通过使用命令“ps aux|grep superviosrd”或“ps -ef|grep superviosrd”查看当前运行的服务,如果有重复则使用kill命令杀掉该进程。每次修改完配置文件后要通过命令“sudo supervisorctl reload ”来重新加载服务。正确配置完成后,可以通过命令“netstat -lpnt”来查看监听端口。Supervisor配置文件的编写如果需要路径也要注意采用绝对路径。

    5.使用Fabric实现自动化部署

    通过ssh连接远程服务器进行操作,使用Nginx和supervisor部署应用,这样子一个能够稳定运行的web服务器就搭建起来了。但是,我们的web应用在运行过程中可能会遇到各种各样的问题,程序员需要对代码进行不断地完善。如果每次修改代码后都要重新手动拷贝一份文件到服务器,然后再重新部署,那这过程一定是相当低效繁琐的,并且大大增加了出错的可能性。聪明的程序员是不会把时间花在重复的机械性操作上的。因此,自动化部署工具应运而生,Fabric则是其中的一个典型代表,Fabric目前只支持Python2,使用命令“pip install fabric”进行安装,Fabric使用了ssh直接登录服务器进行操作。Fabric脚本的编写可以查看相关文档学习,主体的思想便是将在部署时在本地执行的和远程执行的命令写进不同的函数中,每次重新部署时只需要在本地运行函数即可。本地运行的指令和服务器运行的指令对应着不同的命令格式,以此作为区分。

    6.使用Git服务器

    在使用Fabric进行自动化部署时,我们可能经常会用到Git服务器,将本地代码上传到Git服务器,再在远端服务器拉下代码。很多大公司都会有自己的Git服务器,用于公司内部项目的共同开发。在这里,我们使用github提供给我们的免费平台。使用“sudo apt-get install git”安装git。请注意,git只能跟踪文本文件的改动,对于二进制文件没办法跟踪具体信息。然后我们就可以使用“git init”在本地初始化一个git仓库。至于git仓库下文件的增删改动,版本回退等具体操作这里就不赘述了。这里要讲一下如何连接到远程库。首先需要看看我们本机上是否有SSH Key。如果没有则需要运行命令$ ssh-keygen -t rsa -C "youremail@example.com创建密钥文件。然后在网页上登录我们的github账号,添加SSH Key,将生成的公钥文件复制进去,这样一来就可以实现本机和远程github服务器间的连接了。在我们的github账号上创建一个仓库,然后在本机的仓库目录下执行命令“$ git remote add origin git@github.com:zhougb3/learngit.git”,这里需要替换为你自己的用户名。这样子之后就可以使用push命令上传你的代码到远程github服务器上了。然后在我们的web服务器上,我们就可以通过clone命令从远程库克隆代码了。

    7. Linux下用户和权限管理

    Linux最优秀的地方便在于它的多人多工环境,而为了让各个使用者拥有较为保密的文件资料,因此文件的权限管理就显得异常重要了。在我们使用Linux的过程中,如果不懂得Linux的基本用户和权限管理,很多时候在执行命令时都会出现问题。特别是在我们搭建web服务器时,没有正确使用好权限配置会导致某些重要文件不可读,从而导致配置失败。Linux一般将用户可存取的身份分为三个类别,分别是owner/group/others,并且三种身份各有read/write/execute等权限。改变文件的权限可以通过使用chmod命令来实现,而改变文件所属的用户信息可以通过chgrp/chown/chown命令来实现。对于目录的读写执行权限需要额外的注意。目录的读权限表明可以对这个目录使用ls目录查看其内容,但只能得到文件名,不能得到详细的信息。write权限表示允许用户改变目录中的内容,即可以在命令中创建、删除、重命名文件,即使用户不是文件的属主。但是不一定有权限能读取文件具体内容。目录的execute权限表示可以使用cd目录进入这个目录(当然前提是能够进入这个目录的上一级目录),进入后可以进行的操作,决定于这个目录中各项内容(即目录中的子目录或文件)的权限设置。此时不能看见文件名,但可以根据文件权限操作文件。请注意,Linux下文件可不可以执行是由权限决定的,我们经常会给文件添加副文件名,但这只是便于我们了解文件的属性。

    8. 总结

    以上就是在Linux平台上部署web服务器的基本流程,正确高效地部署对于日后网站的长期维护有着极为重要的作用。而对于一个网站开发者而言,熟悉基本的网站部署知识也是很有必要的,有利于开发者写出更为实用高效的代码。正确完成以上部署后,便可以通过网址:www.zhougb3.cn访问我的个人博客。个人博客源码可参考github链接:https://github.com/zhougb3/python_blog

    展开全文
  • linux搭建web服务器流程1、首先我们需要登录Linux服务器,可以使用VNC和SSH。主要使用的是SSH。ssh root@ip -p 222、然后我们可以使用apt和yum命令来更新系统sudo apt updatesudo apt upgradesudo yum updat...

    本篇文章将向你介绍Linux服务器搭建web服务器的流程,具有一定的参考价值,希望对学习Linux运维的同学有帮助!

    40073ad5ab3393cc5fec68451b3bc0ee.png

    linux搭建web服务器流程

    1、首先我们需要登录Linux服务器,可以使用VNC和SSH。主要使用的是SSH。ssh root@ip -p 22

    2、然后我们可以使用apt和yum命令来更新系统sudo apt update

    sudo apt upgrade

    sudo yum update

    3、接着,我们需要下载服务器软件,有两种方式,一是使用包管理工具来安装,二是下载源码进行编译安装

    1、包管理工具安装apache或nginxsudo apt install apache2 -y

    sudo apt install nginx -y

    sudo yum install httpd -y

    sudo yum install nginx -y

    2、编译安装Apache Nginxwget http://xxx.xxx.xxx/apache2.tar.gz # apache2 的源码地址

    tar -zxvf apache2.tar.gz #解压

    ./configure --prefix=/usr/local/apache2

    make

    make install

    #nginx编译安装方法相同

    4、使用scp命令上传网站文件到服务器网站目录scp -P 22 www.zip root@ip:/var/www/html

    5、解压网站文件sudo unzip /var/www/html/www.zip

    完成后就可以访问web站点了,需要注意的是我们的服务器没有安装php、MySQL等环境,所以只能做静态站点。

    通过这么多的操作,我们可以发现,搭建一个web服务器真是麻烦!推荐各位使用Linux面板工具,比如小皮Linux运维面板,只需要一条命令即可安装好所有的服务了。

    (在线视频教程分享:linux视频教程)

    展开全文
  • linux搭建web服务

    2019-08-15 14:21:44
    在内网和外网分别搭建web服务和ftp服务,步骤都是一样的,我只举例一个 二、步骤过程 (1) 卸载原有的httpd服务,采用编译安装 编译安装的优点: 1. 具有较强大的自由度 2. 可及时获得最新的软件 3. 普遍适用于大...
    一、环境准备
    InsideServer(rhel6.5) ip: 202.100.10.100
    

    在内网和外网分别搭建web服务和ftp服务,步骤都是一样的,我只举例一个

    二、步骤过程

    (1) 卸载原有的httpd服务,采用编译安装
    在这里插入图片描述
    编译安装的优点:

    1. 具有较强大的自由度
    2. 可及时获得最新的软件
    3. 普遍适用于大部分linux,便于移植
    

    (2) 解压缩包、安装http服务
    解压缩包

    tar zxf httpd-2.2.17.tar.gz -C /usr/src/ 	
    

    cd 到压缩包目录下

    cd /usr/src/httpd-2.2.17
    

    运行脚本,生成二进制文件

    1.  ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
    2. make
    

    安装http

    make install
    

    在这里插入图片描述
    (3) 看一下安装结果
    在这里插入图片描述
    (4)创建软连接

    1. 软连接可以跨分区,也可以对目录进行操作,源文件被删除后链接有效
    2. 硬链接不可对目录操作,不可跨分区,源文件被删除后链接文件同样有效,创建时不加 -s
    

    在这里插入图片描述
    在这里插入图片描述
    (5) 添加httpd系统服务
    编译安装下linux默认不认可,所以httpd不支持chkconfig服务
    在这里插入图片描述
    在这里插入图片描述
    (6)调整启动级别
    在这里插入图片描述
    (7)建立web站点
    查看配置文件
    在这里插入图片描述
    启动服务,更改首页文件
    在这里插入图片描述
    浏览器访问
    在这里插入图片描述
    搭建基本完成
    后面可以再添加访问控制

    展开全文
  • <VirtualHost *:80> ServerName server1.com DocumentRoot /var/www/webapp Alias / /var/www/webapp/index.html #设置别名,当输入/ 访问后面的内容 <Directory "/var/... Require all granted ...
  • 次安装包包含包含tomcat7 jdk7 mysql nginx apache,可通过选择一键安装,具体安装步骤 见我博客。
  • 1.要求搭建web服务器,能够访问到网页内容为“小胖,你咋这么胖呢!” (1)安装httpd包 (2)设置权限允许访问 保存退出 (3)创建目录,写入信息 (4)关闭防火墙,重启服务 (5)在浏览器界面...

    1.要求搭建web服务器,能够访问到网页内容为“小胖,你咋这么胖呢!”

    (1)安装httpd包

    (2)设置权限允许访问

    保存退出

    (3)创建目录,写入信息

    (4)关闭防火墙,重启服务

    (5)在浏览器界面输入http://192.168.184.100/pang

    2.要求搭建web服务器,创建基于域名的虚拟主机,能够使用www.xiaopang.com和www.dapang.com访问各自的网站,网站存放路径分别为/xiaopang和/dapang,内容自定。

    (1)新建两个网站,分别为www.xiaopang.com和www.dapang.com设置小胖的DocumentRoot为/xiaopang,内容为"这是小胖",大胖的DocumentRoot为/dapang,内容为“这是大胖”。

    (2)在虚拟机和主机上修改配置文件

    ①虚拟机上修改

    [root@localhost www]# vim /etc/hosts

    ②主机上修改,在C盘的window下的system32下的drivers下的etc下的hosts中添加IP和域名

    ③浏览器中搜索域名

    展开全文
  • linux搭建web服务器

    2018-11-22 12:53:38
    通过ssh连接远程服务器进行操作,使用Nginx和supervisor部署应用,这样子一个能够稳定运行的web服务器就搭建起来了。但是,我们的web应用在运行过程中可能会遇到各种各样的问题,程序员需要对代码进行不断地完善。...
  • Linux搭建web项目环境

    2020-04-06 17:37:06
    1.去官网下载Linux版本的jdk压缩包 2.使用root用户登录服务器 3.创建Java文件夹:mkdir java 4.使用远程工具将下载好的Linux版本的压缩包上传至Java目录下 5.解压当前压缩包:tar xvf jdk-11.0.6_linux-x...
  • Linux搭建web环境手册

    2019-07-02 22:00:40
    说明:该笔记是在linux上安装jdk,mysql,tomcat,redis软件,以便于建立一个linux系统下的web环境 建议:保留该安装笔记 以便于企业复用 软件安装命令:rpm 作用:相当于软件助手,可以查询已安装的软件、卸载软件...
  • 虚拟web主机,指的是在同一台服务器中运行多个web站点,其中的每一个站点实际上并不独自占用整个服务器,可以充分利用服务器的硬件资源,从而大大减低网站构建及运行成本.使用httpd可以非常方便地构建虚拟机主机...
  • 请给openlab搭建web网站 网站需求:1、基于域名www.openlab.com可以访问网站内容为welcome to openlab!! —— /openlab 2、给该公司创建三个网站目录分别显示学生信息,教学资料,缴费网站,基于 ...
  • Linux搭建web运行环境

    2018-02-23 19:11:10
    在官网上下载对应版本的jdk和Tomcat http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html ... 2.在Linux下载的文件在Downloads 文件夹下,解压 tar -zxvf...
  • Linux搭建web部署环境

    2016-08-24 17:09:00
    jdk-7u65-linux-x64.tar.gz apache-tomcat-7.0.54.tar.gz 1、解压JDK的安装包到指定的目录下: # tar -zxvf /lcsuo/ftp/jdk.tar.gz -C /lcsuo/java/ 2、解压Tomcat到指定目录: # tar -zxvf ...
  • 背景 趁活动新买了一个华为云,之前的阿里云服务器过期了,需要...1.先官网根据自己的linux位数下载一个JDK的包, 查看位数的命令:uname -r,其中x86_64代表64位的 JDK下载地址(根据自己的位数选择包):https://w...
  • Linux搭建Web服务器流程图分享

    千次阅读 2016-11-17 10:41:15
    第一种方案是提供初学者学习的比较简单,涉及到1台nginx(负载均衡)、2台web服务器、1台nfs(共享存储)、1台rsync(提供存储备份)、2台mysql(主从同步) 第二种方案比较复杂点适合稍微懂点服务器的人搭建,主要...
  • 最近在熟悉linux的使用,在搭建web环境时,找了N多例程,没有一个搭建成功,怀疑例程有问题,一直没注意浏览器的问题。 之前使用的是360极速浏览器,访问网页时一直很长时间才出现反应(有时候就没反应),就误认为...
  • 文章目录说明准备条件搭建一个默认web服务器最简单的方法搭建一个自定义index.html路径的web服务器添加web服务器路径修改默认监听端口创建一个动态web服务器 说明 常规情况下,只要安装了http服务,启动这个服务就会...
  • 一个提供网页的服务器程序二、web服务器的简单搭建1、安装一个可以提供web服务的软件2、 启动httpd服务3、进入主配置文件 在此范围内添加或删除设置,为了方便编写,编辑了一个子配置文件/etc/httpd/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,005
精华内容 2,802
关键字:

linux搭建web

linux 订阅