共计 2621 个字符,预计需要花费 7 分钟才能阅读完成。
在 Ubuntu
上安装 Apache
,有两种方式
- 使用源中的软件包安装, 例如使用 apt-get 命令
- 从源码构建 Apache
我们直接使用源中的软件包进行安装, 安装 apache,在命令行终端中输入一下命令:
sudo apt-get install apache2
2 配置 apache
2.1 启动 apache 服务
安装完成后,重启 apache 服务,在命令行终端中输入一下命令:
sudo /etc/init.d/apache2 [start | stop | restart | status]
或者
service apache2 [start | stop | restart | status]
2.2 开机不启动 apache 服务
由于我们不是服务器, 安装了 apache
并不是一直开启的, 我们期望的是需要的时候手动开启, 因此希望设置开始不启动 apache 服务
Ubuntu 有如下几种方法配置, 但是都是异曲同工, 他们都是修改了启动初始化脚本 rcS 等配置文件
启动项管理工具 sysv-rc-conf
sudo install sysv-rc-conf # 或者使用带 gui 的工具 bum
sudo sysv-rc-conf
1~6 分别是运行级别, 具体配置参见 Ubuntu 下使用 sysv-rc-conf 管理服务
只需要将 apache 对应运行界别的 [X]
(运行) 修改为 []
(不启动) 即可
update-rc.d 命令详解
从所有的运行级别中删除指定启动项
update-rc.d -f remove
按指定顺序、在指定运行级别中启动或关闭
update-rc.d start|stop
实例: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
A 启动后 B 才能启动,B 关闭后 A 才关闭
update-rc.d A defaults 80 20
update-rc.d B defaults 90 10
启动和关闭顺序为 90,级别默认
3 问题
3.1 apache2 [warn] NameVirtualHost *:80 has no VirtualHosts
问题描述
apache2 [warn] NameVirtualHost *:80 has no VirtualHosts
问题原因
出现上述问题的原因 : 定义了多个 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
一般来说 httpd.conf
是个空文件, 直接添加即可, 如果 httpd.conf
文件不存在, 则新建它, 并检查 /etc/apache2/apache2.conf
中是否包含了 httpd.conf
, 如果没有使用如下语句包含
# Include httpd to listen on @/etc/apache2/apache2.conf
Include httpd.conf
或者
- 方法二
修改 /etc/apache2/sites-available/default
在最顶端加入
ServerName 127.0.0.1
注意, 第二种方法修改 default
的时候, 必须写在顶部, 否则重启 apache 服务, 会提示如下错误
再次重启 apache2, 就可以使用 127.0.0.1 来访问 web 服务器啦!
测试:
在浏览器里输入
http://localhost
或者是
http://127.0.0.1
Apache
的默认安装, Apache
的默认安装,会在/var
下建立一个名为 www
的目录, 这个就是Web
目录了, 所有要能过浏览器访问的 Web 文件都要放到这个目录里。
Ubuntu Server 14.04 安装 Web 服务器(Linux+Apache+MySQL+PHP) http://www.linuxidc.com/Linux/2015-06/119061.htm
Linux 下安装配置 PHP 环境(Apache2) http://www.linuxidc.com/Linux/2015-05/118062.htm
Linux 下 Apache 服务器配置 http://www.linuxidc.com/Linux/2016-06/132025.htm
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
Linux 下 Apache 服务器配置 http://www.linuxidc.com/Linux/2016-10/136517.htm
Linux 下 Apache 虚拟主机的配置 http://www.linuxidc.com/Linux/2016-04/130381.htm
Apache 的详细介绍:请点这里
Apache 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/136841.htm