linux -- Ubuntu下安装和配置Apache2

在Ubuntu中安装apache

  安装指令:sudo apt-get install apache2

  启动和停止apache的文件是:/etc/init.d/apache2

  启动命令:sudo apache2ctl -k start (或 server apache2 start)

  停止命令:sudo apache2ctl -k stop (或 server apache2 stop)

  重新启动:sudo apache2ctl -k restart  (或 server apache2 restart)

  配置文件保存在:/etc/apache2,需要说明的是,普通的apache发行版本配置文件是:

  httpd.conf

  Ubuntu发行版本的主配置文件是:

  apache2.conf

  在apache2.conf引用到了以下文件:

    # 包含动态模块的配置:

    Include /etc/apache2/mods-enabled/*.load

    Include /etc/apache2/mods-enabled/*.conf

    # 包含用户自己的配置:

    Include /etc/apache2/httpd.conf

    # 包含端口监听的配置:

    Include /etc/apache2/ports.conf

    # 包含一般性的配置语句片断:

    Include /etc/apache2/conf.d/

    # 包含虚拟主机的配置指令:

    Include /etc/apache2/sites-enabled/

    修改httpd.conf

    增加以下内容:

    ServerName 127.0.0.1:80

ubuntu apache2配置

1.apache2.conf 是主配置文件,httpd.conf 用户配置文件
2.虚拟目录在 httpd.conf 中
  <VirtualHost *>
    DocumentRoot "路径"
    ServerName 名称
    <Directory "路径"> allow from all Options +Indexes </Directory>
  </VirtualHost>

3.根设置(默认主目录)在 /etc/apache2/sites-available/default
4.重启命令
  sudo /etc/init.d/apache2 restart或者
  cd /etc/init.d
  sudo apache2 -k restart
  stop 停止;start 启动
5.日志文件在 /var/log/apache2/
  <VirtualHost *:80>
  ServerName www.kimoqi.com
  DocumentRoot /home/vsftpd/kimoqi
  </VirtualHost>
  <VirtualHost *:80>
  ServerName www.arwenedu.com
  DocumentRoot /home/vsftpd/wangguan/webapps
  </VirtualHost>
  <VirtualHost *:80>
  ServerName www.arwenedu.org.cn
  DocumentRoot /home/vsftpd/wangguan/chem
  </VirtualHost>

  vi /etc/httpd/conf/httpd.conf

在Windows下,Apache的配置文件通常只有一个,就是httpd.conf。但我在Ubuntu Linux上用apt-get install apache2命令安装了Apache2后,竟然发现它的httpd.conf(位于/etc/apache2目录)是空的(甚至不存在httpd.conf文件)!进而发现Ubuntu的 Apache软件包的配置文件并不像Windows的那样简单,它把各个设置项分在了不同的配置文件中,看起来复杂,但仔细想想设计得确实很合理。

严格地说,Ubuntu的Apache(或者应该说Linux下的Apache?我不清楚其他发行版的apache软件包)的配置文件是 /etc/apache2/apache2.conf,Apache在启动时会自动读取这个文件的配置信息。而其他的一些配置文件,如 httpd.conf等,则是通过Include指令包含进来。在apache2.conf中可以找到这些Include行:

引用

 # 包含动态模块的配置:

 Include /etc/apache2/mods-enabled/*.load

 Include /etc/apache2/mods-enabled/*.conf

 # 包含用户自己的配置:

 Include /etc/apache2/httpd.conf

 # 包含端口监听的配置:

 Include /etc/apache2/ports.conf

 # 包含一般性的配置语句片断:

 Include /etc/apache2/conf.d/

 # 包含虚拟主机的配置指令:

 Include /etc/apache2/sites-enabled/

结合注释,可以很清楚地看出每个配置文件的大体作用。当然,完全可以把所有的设置放在apache2.conf或者httpd.conf或者任何一个配置文件中。Apache2的这种划分只是一种比较好的习惯。

安装完Apache后的最重要的一件事就是要知道Web文档根目录在什么地方,对于Ubuntu而言,默认的是/var/www。怎么知道的呢? apache2.conf里并没有DocumentRoot项,httpd.conf又是空的,因此肯定在其他的文件中。经过搜索,发现在 /etc/apache2/sites-enabled/000-default中,里面有这样的内容:

引用

NameVirtualHost *
<VirtualHost *>
  ServerAdmin [email protected]

  DocumentRoot /var/www/

……
这是设置虚拟主机的,对我来说没什么意义。所以我就把apache2.conf里的Include /etc/apache2/sites-enabled/一行注释掉了,并且在httpd.conf里设置DocumentRoot为我的用户目录下的某 个目录,这样方便开发。

sites-enabled:设置虚拟主机

sites-enabled:配置文件

再看看/etc/apache2目录下的东西。刚才在apache2.conf里发现了sites-enabled目录,而在 /etc/apache2下还有一个sites-available目录,这里面是放什么的呢?其实,这里面才是真正的配置文件,而sites- enabled目录存放的只是一些指向这里的文件的符号链接,你可以用ls /etc/apache2/sites-enabled/来证实一下。所以,如果apache上配置了多个虚拟主机,每个虚拟主机的配置文件都放在 sites-available下,那么对于虚拟主机的停用、启用就非常方便了:当在sites-enabled下建立一个指向某个虚拟主机配置文件的链 接时,就启用了它;如果要关闭某个虚拟主机的话,只需删除相应的链接即可,根本不用去改配置文件。

mods-available、mods-enabled和上面说的sites-available、sites-enabled类似,这两个目录 是存放apache功能模块的配置文件和链接的。当我用apt-get install php5安装了PHP模块后,在这两个目录里就有了php5.load、php5.conf和指向这两个文件的链接。这种目录结果对于启用、停用某个 Apache模块是非常方便的。

最后一个要说的是ports.conf,这里面设置了Apache使用的端口。如果需要调整默认的端口设置,建议编辑这个文件。或者你嫌它实在多 余,也可以先把apache2.conf中的Include /etc/apache2/ports.conf一行去掉,在httpd.conf里设置Apache端口。

ubuntu里缺省安装的目录结构很有一点不同。在ubuntu中module和 virtual host的配置都有两个目录,一个是available,一个是enabled,available目录是存放有效的内容,但不起作用,只有用ln 连到enabled过去才可以起作用。对调试使用都很方便,但是如果事先不知道,找起来也有点麻烦。

/etc/apache2/sites-available 里放的是VH的配置,但不起作用,要把文件link到 sites-enabled 目录里才行。

  1. <VirtualHost *>
  2. ServerName 域名
  3. DocumentRoot 把rails项目里的public当根目录
  4. <Directory public根目录>
  5. Options ExecCGI FollowSymLinks
  6. AllowOverride all
  7. allow from all
  8. Order allow,deny
  9. </Directory>
  10. ErrorLog /var/log/apache2/error-域名.log
  11. </VirtualHost>

  进一步的配置和使用,就可以查阅APACHE的手册了

Apache配置文件httpd.conf说明

DocumentRoot "/var/www/html" ---Apache默认服务器主目录路径

DirectoryIndex index.html index.htm index.php index.html.var ---默认文档,多个文件之间用空格分开

Listen 192.168.1.1:80       设置监听ip是192.168.1.1的地址和端口为80

Listen 192.168.1.2:8080     设置监听ip是192.168.1.2的地址和端口为8080

ServerRoot "/etc/httpd"     设置相对根目录的路径 ,通常是指存放配置文件和日志文件的地方。缺省是:/etc/httpd 一般包括conf和logs子目录

ErrorLog logs/error_log     设置错误日志    注意:如果日志文件存放路径不是以“/”开头,意味著该文件是相对于 ServerRoot目录

CustomLog logs/access_log combined      访问日志      (combined指明日志使用的格式,还有common格式)

ServerAdmin [email protected]     设置网络管理员的Email    -当客户端服务器发生错误时,服务器通常会向客户端返回错误提示页面,为了方便解决错误,这个网页中通常有管理员的Email地址,可以通过使用 ServerAdmin语句来设置管理员的EMail地址

ServerName www.iigoogle.com:80       设置服务器主机名称 (如果有域名可以填入域名,没有域名则可填入服务器IP地址)

AddDefaultCharset GB2312           设置默认字符集,定义服务器返回给客户机默认字符集(由于西欧UTF-8是Apache默认字符集,因此当访问有中文的网页时会出现乱码,这时只要将字符集改成GB2312,再重启Apache服务即可)

Alias /down    "/software /download"     创建虚拟目录(创建名为down的虚拟目录,它对应的物理路径是:/software /download)
Alias /ftp     "/var/ftp"                创建虚拟目录(创建名为ftp的虚拟目录,它对应的物理路径是:/var/ftp)

<Directory "/var/www/html">       设置目录权限(<Directory "目录路径">此次写设置目录权限的语句</Directory>)
      Options FollowSymLinks        page:116
      AllowOverride None
</Directory>

基于域名的虚拟主机 
NameVirtualHost 220.123.55.99       ---先用NameVirtualHost指令指定哪个IP地址负责响应对虚拟主机的请求
<VirtualHost www.iigoogle.com>
      ServerName www.iigoogle.com:80
      ServerAdmin [email protected]
      DocumentRoot /www/docs/iigoogle
      DirectoryIndex index.jsp   
      ErrorLog logs/www/iigoogle/error_log
      CustomLog logs/www/iigoogle/access_log common
</VirtualHost>
另一种写法
NameVirtualHost 220.123.55.99:80    
<VirtualHost www.iigoogle.com:80>
      ServerName www.iigoogle.com
      ServerAdmin [email protected]
      DocumentRoot /www/docs/iigoogle.com    
      ErrorLog logs/www/iigoogle/error_log
      CustomLog logs/www/iigoogle/access_log common
</VirtualHost>

时间: 2024-10-18 04:19:56

linux -- Ubuntu下安装和配置Apache2的相关文章

window和ubuntu下安装JDK配置环境变量

JDK的环境变量的安装,记录一下,以便方便忘记看,主要是window和ubuntu系统下的安装和环境变量的配置 JDK下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 下载对应系统的JDK 一.Window下安装JDK配置环境: 安装很简单,选择存放目录就行,基本上一直next. 配置环境变量: 在系统环境下配置如下: 新建  JAVA_HOME C:\Program Fi

Linux CentOS下安装、配置mysql数据库

如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目,我们当然可以安装一个myeclipse到Linux系统上去,这个安装方法和安装eclipse完全相同,就没有记录下来了,有了jdk.tomcat.eclipse我们就已经能进行我们的程序开发了,但是如果要做一个项目,哪怕是小的不能再小的项目都离不开数

Windows XP下安装和配置Apache2.2.22服务器+PHP5+Mysql5

原文:http://www.chinaz.com/web/2012/0516/252021.shtml 随着PHP网站的流行,国内越来越多的站长使用php开发网站或者使用相关的php开源网站(例如:DeDeCMS.phpWind.康盛的Discuz!.wordpress等一些目前比较流行的开源网站),对于一些刚开始接触PHP语言或者刚开始建立自己站点的人来说,在本地测试php网站无疑是件非常重要的事情,因为这样可以在本地做若干的调试,而不用去担心网络问题以及运营商问题. 接下来,笔者将Windo

017在Linux系统下安装和配置Tomcat

实例说明 介绍在Linux系统下安装可配置Tomcat 设计过程 首先要把xxx.tar.gz上传到Linux,然后开始执行以下命令 使用tar -zxvf xxx.tar.gz解压文件,屏幕将显示解压信息 使用ll显示出Tomcat文件夹xxx 使用mv xxx  /usr/tomcatX 把文件夹移动到usr目录下 使用mv xxx tomcatX修改目录文件名为tomcatX 进入tomcatX/bin目录下,startup.sh和catalina.sh这两个文件能启动tomcat ./s

在Ubuntu下安装、配置和测试cuda[复制]

在Ubuntu下安装CUDA要比在Windows下稍微复杂和费事一些,尤其对于平台和一些其他依赖软件包的安装上要求多些. Nvidia官方只提供了Ubuntu10.10下的CUDA的Toolkit,SDK,自己一开始是想在Ubuntu11.10上安装CUDA的,结果安装了编译时却出现很多错误并且提示gcc版本过高(Ubuntu11.10内核是2.6而默认安装编译的gcc是4.6的)后来重新又把gcc4.6卸载再装了gcc4.4.结果由于之前使用的是默认的Ubuntu开源的nvidia驱动,还是不

详解:Ubuntu 下安装和配置 FTP

FTP(文件传输协议)是一个较老且最常用的标准网络协议,用于在两台计算机之间通过网络上传/下载文件.然而, FTP 最初的时候并不安全,因为它仅通过用户凭证(用户名和密码)传输数据,没有进行加密. 警告:如果你打算使用 FTP, 需要考虑通过 SSL/TLS配置 FTP 连接.否则,使用安全 FTP,比如 SFTP 会更好一些. 在这个教程中,我将向你们展示如何在 Ubuntu 中安装.配置并保护 FTP 服务器(VSFTPD 的全称是 "Very Secure FTP Deamon"

阿里云Ubuntu下安装、配置权限和导入本地mongodb

---恢复内容开始--- 第一部分:首先先在Ubuntu下安装好mongodb,步骤如下: 首先我们需要借助远程管理工具链接到阿里云上的ubuntu系统,接着进行如下操作 一.导出软件源的公钥 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 二.为mongodb创建软件源list文件 ubuntu12.04版本 echo "deb http://repo.mongodb.org/apt/ubun

Win10+WSL2+Ubuntu 18.04(WSL下)+VS Code(Win10下)+TexLive 2019(Ubuntu下)安装和配置

本人手头电脑是Win10 Home版全新安装的系统,由于不想在新系统盘里面安装TexLive导致固态硬盘不断扩大,所以,考虑安装Ubuntu做为WSL,然后把TexLive安装在Ubuntu,并通过VS Code调用Ubuntu命令来写Latex的方法来写一些论文.在此,提供一个思路给大家借鉴. Windows 10安装WSL2和Ubuntu 18.04 这个过程其实直接参照微软的标准过程就可以了,大致步骤总结如下: 去控制面板开启Virtual Machine Platform和Windows

[linux]ubuntu下安装hadoop(单机版)

ubuntu版本12.04.3 64位 hadoop是用运行在java虚拟机上的,所以需要先安装jdk,jdk安装配置方法在另一篇博文ubuntu12.04下安装jdk1.7 源码包准备: 我下载的是hadoop-1.2.1.tar.gz,这个版本比较稳定,下载地址可以到官网提供的镜像http://www.apache.org/dyn/closer.cgi/hadoop/common/ 1.创建hadoop管理员帐号 直接在终端执行如下命令行: 1 sudo adduser hadoop 然后要