从今天开始,我将开始Web开发的学习。本系列博客将陆续记录我学习过程中的收获和困惑,从前端到后端,一探Web开发的流程和内容。我目前掌握的有C/C++,有一些使用C进行嵌入式开发的经验,C++就马马虎虎了,对于C++这个“不可以精通”的语言,我会另开主题记录,欢迎关注。只会C语言,可以说在Web开发上是新手中的新手,但是总要勇于挑战新的事物,才不会落下守旧的嫌疑,尚且没有能力开拓,那么至少要保持进取才行。

本文介绍了Apache的下载,安装,和配置过程(你想要阿帕奇武装直升机?出门自己问路)。经过安装配置最后把自己的网页放在指定的文件夹,就可以创建一个简单的网站(局域网下)了。这有什么用呢,存在电脑上的视频啊什么的就可以躺在床上通过手机浏览了,什么视频,你肯定明白......原来我的学习动机一直不纯净。我还是要辩解啊,我可不全是为了这些奇奇怪怪的东西,要实现这个怠惰的想法,只下载一个HFS就可以了(一款无需安装的绿色服务器软件,下载也非常容易),但是毕竟功能简单,至多用于实现文件的共享,不能设置PHP,python这些服务器脚本。而Apache就强大很多,拥有你想要的一切,但"力量总是要付出代价的"(康纳 语),Apache的安装和配置也要复杂的很多啊。

1.下载Apache

Apache作为一款著名的开源软件下载到官方版本非常简单。但打开官网的下载才发现官方提供的全是源代码,我的天啊,从未这样下过软件的我心里只有四个字,不得了啊。好在后来发现还是可以下载到编译好了的版本,而且得到了官方的推荐,太好了,至少不用自己编译了。直接把这个网址给大家吧http://www.apachehaus.com/cgi-bin/download.plx。打开这个链接后选择最新的版本(或你需要的版本)点击右边的德国国旗就弹出下载框了(8.5M),至此下载完成。

2.配置安装Apache

解压缩后一起来看看都下载了些什么吧,话说这个感觉有点像打开快递包裹呢。好在不会有意外,大概可以看到如图的文件/文件夹,不然你八成是下载了假的阿帕奇。我们来看一下都是什么吧。

  • bin文件夹里面是一堆程序,一会儿需要的httpd.exe和ApacheMonitor.exe就在里面躺着呢。
  • cgi-bin文件夹,看名字把自己的CGI程序或者脚本放在里面就对了
  • conf文件夹显然是configuration,这里面是一堆关于服务器的配置文件。后缀奇奇怪怪但都是文本文件,能用记事本搞定
  • htdocs文件夹,“夹”如其名,把HTML文档放在里面就对了(里面已经有一个index.htm了,那是一会儿测试用的)
  • logs文件夹,如果使用中出现了莫名其妙的问题,这里有一个error.log是错误日志,没这个都不知道该怎么问度娘

安装和配置过程思路很简单,但都是在命令行中完成的,有些还需要管理员权限,因此看上去就没有安装360那么简单了。但是自己全都操作下来后,你也会比安装完360更放心(鬼知道360到底对电脑干了什么)。两步走,一修改配置,二注册服务。

重要的事先强调

1.http服务器默认占用80端口来监听客户端(也就是浏览器)的请求,如果80端口已经被其他程序占用一会儿的安装就会失败(注册的服务无法启动),这是最常见的失败原因。找了半天错误才发现仅仅是因为开了迅雷,避免这种郁闷的方法就是安装前先看看端口占用情况:win+R 输入cmd,使用netstat -a -n命令。如果没有被占用,那就放心了。

2.刚才说到了注册服务,那是什么意思?windows服务是一类进程,它可以在计算机启动时自动启动,而且不显示任何用户界面。所谓注册服务就是注册这样的一个进程,告诉操作系统这是一个“需要在计算机启动时自动启动,而且不显示任何用户界面”的进程。apache注册这样的一个服务来保持对80端口的监听,以便随时响应来自网络的请求。注册服务需要管理员权限。

那么开始第一步,修改配置。用记事本打开conf文件夹中的httpd.conf文件,第一句话就是“This is the main Apache HTTP server configuration file.”这个文件的重要性可想而知,对该文件的任何修改都三思而行。首先,找到Define SRVROOT "/Apache24"(如果找不到可以使用记事本的搜索),修改引号内的内容为真实的Apache24文件夹的地址。比如说我把这个文件夹放到G:盘则改为Define SRVROOT "G:/Apache24"(不修改这里一会儿启动服务时会提醒错误代码2找不到指定文件)。然后,找到

#Listen 12.34.56.78:80 Listen 80,这是再说注册服务后会监听哪一个端口,默认就是80端口。有的人说可以修改这个值解决端口冲突,比如改成81或者8080等等,私认为这样做不是最好的解决办法,最好尝试修改其他占用该端口软件的端口值,毕竟80端口就是http协议的指定端口,修改后你的网站用户除了输入网址外还有指定端口才能访问你的网站(也就是说在使用netstat -n -a 确定没有占用80端口后,可以完全不修改这里,保持现状)。

第二步,注册服务。以管理员身份运行命令提示符(不知道在哪里就问一下小娜吧)。输入"G:\Apache\bin\httpd.exe" -k install -n apache。注意两点,首先Apache文件夹要放在没有中文名的路径中。其次-n apache的意思就是说你注册的这个服务的名字叫做apache,也可以用其他的名字。

双击运行bin文件夹中的ApacheMonitor.exe,在任务栏右下角可以找到一个陌生的小图标,点击它找到你命名的服务,选择start,如果图标出现绿色三角 就说明启动成功了。这个时候打开浏览器输入http://localhost,应该会显示一个网页(就是htdocs文件夹中的index.htm),大功告成。

painterQ 2017年5月12日 tri_uestc@163.com

安装并配置Apache的更多相关文章

  1. 如何安装、配置Apache

    Apache的安装流程网上版本很多,但很多版本有错误,或者缺漏,如果初学者按照那样安装的话会遇到各种各样的问题.我整理了自己安装.配置Apache的过程,亲测有效,分享给大家. 基本过程如下: Dow ...

  2. 在Linux上怎么安装和配置Apache Samza

    samza是一个分布式的流式数据处理框架(streaming processing),它是基于Kafka消息队列来实现类实时的流式数据处理的.(准确的说,samza是通过模块化的形式来使用kafka的 ...

  3. Apache系列:Centos7.2下安装与配置apache

    Centos7.2下安装与配置apache(一) 配置机:腾讯云服务器,centos7.2 一.安装Apache服务(Apache软件安装包叫httpd) yum install httpd -y 二 ...

  4. 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)

    如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...

  5. MAC下用homebrew安装及配置apache、php和mysql

    我们用到php运行环境的时候总喜欢用集成包,其实在mac下,用homebrew也可以很快的安装这些东西,配置也很简单. homebrew homebrew是mac下的一个包安装管理工具,使用非常简单方 ...

  6. Windows平台下载、安装、配置Apache全攻略

    本文介绍了如何在windows平台进行apache服务器的下载.安装和配置过程. 1.下载 首先进入apache for windows的官方下载地址[猛戳这里],依次在下列页面进行下载操作: 我这里 ...

  7. Centos7上安装及配置Apache

    Apache HTTP服务器是世界上最流行的Web服务器. 它是一款免费的开源和跨平台的HTTP服务器,提供强大的功能,可以通过各种模块进行扩展. 以下说明介绍如何在CentOS 7机器上安装和管理A ...

  8. 安装与配置apache WEB服务器(Linux环境)

    Linux环境下安装一个软件的方式多数为两种: 1.通过命令从远程源下载自动默认安装 2.编译安装 第一种较为简单,直接通过 yum 或者 apt-get 直接安装即可,但是对我来说,编译安装可能更加 ...

  9. CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

    在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...

随机推荐

  1. [codevs]1060搞笑世界杯

    CODEVS上一道钻石题,还是DP的思想,先来题目 1060 搞笑世界杯 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description ...

  2. 《Thinking in Java》 And 《Effective Java》啃起来

    前言 今天从京东入手了两本书,<Thinking in Java>(第四版) 和 <Effective Java>(第二版).都可以称得上是硬书,需要慢慢啃的,预定计划是在今年 ...

  3. React Native技术做的一个项目“微笑阅读”

    最近用React Native做了一个APP应用,有点心得: React Native确实比Hybrid应用渲染快,响应快,用户体验更好: React Native比原生简单多了,会Js就可以了,开发 ...

  4. POJ1012-Joseph数学

    题目链接:http://poj.org/problem?id=1012 题目大意: 约瑟夫环的一个扩展,2*k个人围一圈,前k个是好人,后k个是坏人.报到m的人就要死掉,然后重新开始报数.要求的是最小 ...

  5. [刷题]算法竞赛入门经典 3-12/UVa11809

    书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-4/UVa11809:Floating-Point Numbers 代码: //UVa11 ...

  6. Java学习笔记——浅谈数据结构与Java集合框架(第二篇、Queue、Set)

    江南好,何处异京华. 香散翠帘多在水,绿残红叶胜于花.无事避风沙. --<纳兰词> 诗词再好,大图不能忘 上大图: 先说说栈和队列: 栈就好比手枪的弹匣,你往里面压入子弹,最先压入的子弹就 ...

  7. ConcurrentHashMap实现原理及源码分析

    ConcurrentHashMap实现原理 ConcurrentHashMap源码分析 总结 ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对Ha ...

  8. IE6.0升级的两种通用代码

    随着W3C组织开始针对新的Web标准提案日期的到来,HTML5以及CSS3的新时代即将到来,同时微软的Win8以及IE10的出现也带给了这个世界奇妙的结构. 微软早在不再给WinXP做技术支持时,IE ...

  9. SmartCoder每日站立会议04

    1.站立会议内容 经过今天的站立会议,决定首页先做成简单的样式,先完善功能.进行了首页模块划分. 站立会议照片: 2.任务展板    3.燃尽图    

  10. [原创]CentOS下Mysql双机互为备份

    一.环境: 1.安装Centos-6.5-x64位系统的机器两台: host1:192.168.2.3 host2:192.168.2.4  (互相能ping通) 2.安装Mysql. 命令:Yum ...