原文地址:https://blog.csdn.net/gatieme/article/details/53025505
1 安装apache
在 Ubuntu 上安装 Apache,有两种方式

使用源中的软件包安装, 例如使用apt-get命令

从源码构建Apache

我们直接使用源中的软件包进行安装, 安装apache,在命令行终端中输入一下命令:

sudo apt-get install apache2
1
2 配置apache
2.1 启动apache服务
安装完成后,重启apache服务,在命令行终端中输入一下命令:

sudo /etc/init.d/apache2 [ start | stop | restart | status ]
1
或者

service apache2 [ start | stop | restart | status ]
1
2.2 开机不启动apache服务
由于我们不是服务器, 安装了 apache 并不是一直开启的, 我们期望的是需要的时候手动开启, 因此希望设置开始不启动apache服务

Ubuntu有如下几种方法配置, 但是都是异曲同工, 他们都是修改了启动初始化脚本rcS等配置文件

启动项管理工具sysv-rc-conf

sudo install sysv-rc-conf #或者使用带gui的工具bum
sudo sysv-rc-conf
1
2
1~6分别是运行级别, 具体配置参见Ubuntu下使用sysv-rc-conf管理服务

只需要将apache对应运行界别的X修改为即可

update-rc.d命令详解

从所有的运行级别中删除指定启动项

update-rc.d -f remove
1
按指定顺序、在指定运行级别中启动或关闭

update-rc.d start|stop
1
实例:update-rc.d apachectl start 20 2 3 4 5 . stop 20 0 1 6 .

解析:表示在2、3、4、5这五个运行级别中,由小到大,第20个开始运行apachectl;在 0 1 6这3个运行级别中,第20个关闭apachectl。这是合并起来的写法,注意它有2个点号,效果等于下面方法:

update-rc.d apachectl defaults
1
A启动后B才能启动,B关闭后A才关闭

update-rc.d A defaults 80 20
update-rc.d B defaults 90 10
1
2
启动和关闭顺序为90,级别默认

3 问题
3.1 apache2 [warn] NameVirtualHost *:80 has no VirtualHosts
问题描述

apache2 [warn] NameVirtualHost *:80 has no VirtualHosts
1
问题原因

出现上述问题的原因 : 定义了多个 NameVirtualHost, 故将 /etc/apache2/ports.conf 中的 NameVirtualHost *:80 注释掉即可

问题解决

Ubuntu之前的版本定义在 /etc/apache2/sites-available/default, 8.04后在/etc/apache2/ports.conf

故可以将 /etc/apache2/ports.conf 中的NameVirtualHost *:80 注释掉

这个问题的本质是在没有定义域名是一个端口只能对应一个虚拟主机,将NameVirtualHost *:80改为其他端口也可以解决

如果有多个不同的域名的话,用同样的端口也可以

3.2 using 127.0.1.1 for ServerName
问题描述

可能会出现的问题2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName

问题解决

方法1, 修改httpd.conf
修改 /etc/apache2/httpd.conf, 在文件中添加,

ServerName localhost:80
1
一般来说 httpd.conf 是个空文件, 直接添加即可, 如果 httpd.conf 文件不存在, 则新建它, 并检查 /etc/apache2/apache2.conf 中是否包含了 httpd.conf, 如果没有使用如下语句包含

Include httpd to listen on @/etc/apache2/apache2.conf

Include httpd.conf
1
2
或者

方法二
修改 /etc/apache2/sites-available/default

在最顶端加入

ServerName 127.0.0.1
1
注意, 第二种方法修改 default 的时候, 必须写在顶部, 否则重启apache服务, 会提示如下错误

再次重启apache2, 就可以使用127.0.0.1来访问web服务器啦!

测试:

在浏览器里输入

http://localhost

或者是

http://127.0.0.1

Apache 的默认安装, Apache 的默认安装,会在/var 下建立一个名为 www 的目录, 这个就是Web 目录了, 所有要能过浏览器访问的Web文件都要放到这个目录里.
————————————————
版权声明:本文为CSDN博主「JeanCheng」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gatieme/article/details/53025505

[转载]Ubuntu下apache的安装与配置的更多相关文章

  1. Ubuntu下APACHE HTTPS安装和配置

    http://blog.csdn.net/newjueqi/article/details/9789659

  2. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  3. Ubuntu下Apache的安装

    Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5),参见<Ubuntu下快速安装LAMP server>一文. 也可以手动安装Apache.本文介绍如何手 ...

  4. ubuntu下的openfire安装、配置、运行

    openfire服务器              Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议.您可以使用它轻易的构建高效率的即时通信服务器.Op ...

  5. Ubuntu下samba的安装和配置

    samba是Linux系统上的一种文件共享协议,可以实现Windows系统访问Linux系统上的共享资源,现在介绍一下如何在Ubuntu 14.04上安装和配置samba一. 一.更新源列表 打开&q ...

  6. Linux下Apache的安装与配置

    本文安装的httpd版本为httpd 2.4.4安装之前确保 Development Libraries与Development tools安装上.安装方法参考:http://www.linuxidc ...

  7. ubuntu下Tomcat7的安装和配置

    和前几个软件一样,Tomcat 同样是由JAVA开发的,所以,在安装前一定要装好JDK. 大家可以到 http://tomcat.apache.org/download-70.cgi 下载最新的Tom ...

  8. Ubuntu 下 Tomcat7 的安装和配置

    tomcat下载地址:http://tomcat.apache.org/download-70.cgi 声明:下面的内容和原创笔者的博文的内容差不多,不一样的只是tomcat7的安装目录不同,我按照我 ...

  9. Java全栈程序员之02:Ubuntu下Java环境安装、配置、测试

    在上文讲完之后,我们手里的ubuntu只能算是一个上网机,什么也干不了,本篇我们将折腾它为开发机. 这里,我们这里假定你对linux体系是初级选手,所以本篇会讲的啰嗦一点,高手就出门左转吧. 1.安装 ...

随机推荐

  1. linux 文件目录介绍

    网上的资源 太多了,copy 过来 留给自己用吧! 摘自 : http:/ 使用linux也有一年多时间了  最近也是一直在维护网站系统主机  下面是linux目录结构说明 本人使用的是centos系 ...

  2. 解决eclipse无法部署工程到tomcat运行的问题

    当在tomcat想加入工程时在列表没发现要的项目时, 引起这个错误提示的原因是:项目里的.project文件和.settings文件的缺失或者错误.而不能适用于现在的tomcat. 解决办法如下: 右 ...

  3. Python 入门知识

    一python 语言介绍 特点 简单清晰明确   目前是全球最火的高级编程语言  应用领域很广 NASA FACEBOOK 谷歌 春雨医生 金山 腾讯,Python是一门解释性弱类型编程语言.编译性得 ...

  4. spring 手动注册bean

    //将applicationContext转换为ConfigurableApplicationContext ConfigurableApplicationContext configurableAp ...

  5. 详讲KMP算法

    两个字符串: 模式串:ababcaba 文本串:ababcabcbababcabacaba KMP算法作用:快速在文本串中匹配到模式串 如果是穷举法的方式: 大家有发现,这样比效率很低的. 所以就需要 ...

  6. Linux高级调试与优化——进程管理和调度

    进程管理 进程和文件是Linux操作系统的两个最基本的抽象. 进程是处于执行期的程序,进程不仅仅局限于一段可执行程序代码,通常还包含其他资源,如打开的文件.挂起的信号.内核内部数据.处理器状态.进程地 ...

  7. 百度地图api根据地址获取经纬度

    package com.haiyisoft.cAssistant;import java.io.BufferedReader;import java.io.IOException; import ja ...

  8. golang context学习记录2

    上篇文章中,我们已经学习了使用context实现控制多个goroutine的退出. 本文将继续介绍如何使用context实现超时情况下,让多个goroutine退出. 例子 首先,启动3个gorout ...

  9. BurpSuite(二) proxy 模块

      Proxy代理模块作为BurpSuite的核心功能,拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流. Burp 代理允许你 ...

  10. vue中关于checkbox数据绑定v-model指令的个人理解

    vue.js为开发者提供了很多便利的指令,其中v-model用于表单的数据绑定很常见, 下面是最常见的例子: <div id='myApp'>     <input type=&qu ...