利用云服务器+ Windows Server + Apache HTTP Server发布网站

时间:2024-03-26 21:55:48

在大一下网页设计课程的课程设计中,老师要求我们制作一个简易网站(主要是主页,有能力可以整个网站),利用云服务器和apache上传。以下是我实训报告上关于云服务器平台的配置与搭建、部署Apache平台、并利用云服务器+Apache成功上传网站站点的主要过程报告(写于2018年暑期)。

由于我本身技术水平有限,我选择的是最简单发布网站方式,搭建的过程都是最方便的。不足和错误之处烦请指正。

实验环境(语言、开发环境、测试环境等):

  1. HTML5+CSS+JavaScript(用于网页代码)
  2. Dreamweaver(用于网页代码)
  3. 云服务器+ Windows Server 2012 + Apache HTTP Serve(发布网站主要环境)

上传云服务器

1.购买云服务器并设置防火墙

在阿里云官网上,注册并购买云服务器,设置密码,设置安全组规则(为保障外网的正常访问,即入方向的正常),主要是看看规则方向、端口范围、授权对象的设置。如果端口被修改过,要设置成相对应的端口,默认输出端口是8080.设置规则如图6-1所示。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站

2.下载并在云服务里搭建Apache平台

(1)下载apache

登陆Apache官网,点击导航栏中的Projects→选择HTTP Server→选择左侧菜单栏中的download→找到files for Microsoft Windows并点击→选择第一个Apache Hausa→选择合适的产品,我选择的是第一个最新的,然后下载。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站

(2)远程连接云服务器

①win+R,打开运行窗口,输入mstsc→在计算机名称中输入IP地址。点击连接。(作业成功上交之后,我便不管这个了????购买的云服务器早已过期,图上的ip地址是当时的,此时已被未续费过期回收)
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
②输入密码。选择信任此远程连接,并点击下方的“显示详细信息”,为保障文件的正常传输,在“驱动器”“剪贴板”“打印机”前都打勾。点击连接。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
③成功进入云服务器中(我已经在云服务器中下载了chrome浏览器)。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站

(3)搭建apache2.4平台。

①在C盘中新建apache文件夹,并将所下载的apache软件导入。
②在C:\apache\Apache24\bin打开ApacheMonitor,提示缺少文件。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
在Microsoft官网下载相对应的X86的文件,导入到云服务器中,并安装运行。

③此时打开ApacheMonitor,发现start按钮是灰色的,这是因为没有启动命令来开启服务。(图来自网络,新版的界面中ok是在按钮最下方的)
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
你可以在Apache安装目录的bin子目录下,使用如下命令来开启服务:
httpd -k install
这样的话,按钮应该会变正常。(之前输入的命令都因为粗心而出现失误)
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
此时重新打开apache,发现 start灰色问题解决
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
④此时点击start,还是显示失败
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
这里是我在部署整个云服务器里花的最多时间的一个地方,因为在期末我也是部署成功了的,当时我在老师指导下直接修改好了故没有没有遇到这个问题。而现在部署时我早已经我忘了,查阅了各自方法,简单的复杂的繁琐的,我都是不行,到后来我都是很生气了。然而,生气过后,我还是熬着夜尝试找出问题。网上大多数出现的原因

  1. 端口被占用,我尝试了依旧失败;
  2. 软件冲突,我当时没有下载任何软件,不过我还是检查了一下,并没有出现冲突现象;
  3. 配置文件错误,这是我最终的错误原因(参考 https://blog.csdn.net/wycf1314/article/details/10354803 )。

解决方法:
进入cmd 然后进入 Apache安装目录\bin,这个有个偷懒的办法,即在bin文件夹的地址栏中直接输入cmd,就是进入当前文件的cmd中。输入

httpd.exe -w -n "Apache2.4" -k start

读程序,发现错误原因
ServerRoot must be a valid directory
httpd.conf里面配置的ServerRoot路径跟实际路径不一致,导致路径无效。
利用云服务器+ Windows Server 2012 + Apache HTTP Server发布网站
解决步骤

  • i.打开httpd.conf后,搜索Define
    SRVROOT(只有一处),将其后面的双引号里面的路径改为Apache的实际解压路径后保存即可,我的地址为C:\apache\Apache24
  • ii.运行CMD到apache\Apache24\bin执行httpd -k install,不再报错ServerRoot must be
    a valid directory,成功安装apache服务。
  • iii:重新开启apache服务器,start成功开启。至此,整个云服务器 + Windows Server 2012 + Apache
    HTTP Server 部署成功

总结:
在这个start 按钮开启failed过程中,我所作的所有一切,花了那么时间尝试了那么多种办法,针对我个人情况只有最后一种是正确且有效的,最后一个办法大概总共是十几分钟,而之前加在一起有一天之久了。不经历过前面所有的失败,怎么就会知道这个是可以的呢,怎么就知道原来这个错误原因主要有三种,怎么知道这三种错误原因各自该怎么解决呢?
在这个问题出现后,在我最烦躁的时候,我有询问过同学祈求得到帮助,后来我发现别人要么是跟我一样停在这里了要么是没有遇到这个问题;在我成功解决后,将解决方法告知同样在这一步遇到麻烦的同学时,我发现她用我的方法依旧失败;每个人的情况不一样,每个人的解决办法也将不一样。我很高兴的是,最后我还是通过自己的努力将其解决,将这个拦路虎成功踩在脚下。虽然最后回首发现其实这一步还是简单的,虽然这个问题其实并没有什么大不了,虽然这个对于我整个课程设计来说没有什么加分的,虽然这是个必须解决的问题,但是我还是很为自己自豪的,这么多个夜没有白熬。

3.上传个人作品到云服务器中。

(1) 在Apache成功开启的状态下,在其默认地址中(C:\apache\Apache24\htdocs 我觉得没什么太大必要改这个也就没改),导入测试的HTML文件,在云服务器内网和外网都测试成功。再导入自己做的站点文件夹。
(2) 在自己的计算机chrome浏览器中输入http://47.106.216.18/wj_site/html/index.html,访问成功;在手机中访问,同样成功。至此,成功利用云服务器+Apache上传网页。