starxzj 发表于 2018-11-20 09:16:58

Apache网站服务基础

  

Apache网站服务基础
一.安装httpd服务器
1.      为了避免端口冲突,程序冲突,建议先卸载使用RPM方式安装的httpd
rpm-q | grep httpd
rpm-e httpd--nodeps
2.      源码编译及安装
a)      解包
tar zxfhttpd-2.2.17.tar   -C /root
cd~
b)      配置
根据服务器实际的应用需求,可以灵活设置不同的定制选项

各选项的含义:
--prefix:指定将httpd服务程序安装到哪个目录下
--enable-so:启用动态加载模块支持,使httpd具备进一步扩展的能力
--enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护
--enable-charset-list:启动字符集支持,以便支持用各种字符集编码的网页
--enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力
c)编译及安装
make && make install
3.      确认安装结果

主要目录的用途:
/usr/local/httpd/bin:存放httpd服务的各种执行程序文件,包括主程序httpd,服务控制工具apachectl等
/usr/local/httpd/conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf,增强配置子目录extra等
/usr/local/httpd/htdocs:存放网页文档,包括默认首页文件index. html等
/usr/local/httpd/logs:存放httpd服务的日志文件
/usr/local/httpd/modules:存放httpd服务的各种模块文件
/usr/local/httpd/cgi-bin:存放各种CGI 程序文件
4.      优化执行路径
通过源码编译安装的httpd服务,程序路径并不再默认的搜索路径中,为了使该服务在使用时更方便,可以为相关程序添加符号链接。
ln-s/usr/local/httpd/bin/*/usr/local/bin/
5.      添加httpd系统服务
cp /usr/local/httpd/bin/apachectl/etc/init.d/httpd
vim/etc/init.d/httpd(在前三行填写如下图内容)chkconfig –add httpd//将httpd添加为系统服务
chkcofnig –list http   //查看httpd服务的自启动状态
  二. httpd的部署过程
  1.配置并启动服务
   vim/usr/local/httpd/conf/httpd.conf
ServerName www.akhack.com       //设置网站名称
修改httpd.conf文件的配置内容后,建议使用带“-t”选项的apachectl命令对配置文件内容进行语法检查,如没有语法错误,则显示“Syntax OK”的信息
/usr/local/httpd/bin/apachectl-t
  2.启动服务
  servicehttpd start
  查看服务是否启动
  netstat-anpt | grep httpd
  3.查看web站点访问情况
  通过查看日志文件access_log,可以了解web站点的访问情况
  通过查看日志文件error_log,可以为排查服务器运行故障提供参考

  三.httpd.conf配置文件
  1.全局配置项
  ServerRoot:设置httpd服务器的根目录,该目录下包括了运行web站点必须的子目录和文件。
  Listen:设置httpd服务器监听的网络端口号,默认端口80.
  User:设置运行httpd进程时的用户身份,默认为daemon。
  Group:设置运行httpd进程的的组身份,默认为daemon。
  ServerAdmin:设置httpd服务器的管理员E-mail地址。
  ServerName:设置web站点的完整主机名(域名)
  DocumentRoot:设置网站根目录,即网页文档在系统中的存放路径
  Directorylndex:设置网站的默认首页,可以设置多个首页文件,用空格隔开
  ErrorLog:设置错误日志文件的路径,默认路径为logs/error_log
  LogLevel:设置记录日志的级别,默认级别为warn(警告)
  CustomLog:设置访问日志文件的路径,默认为logs/access_log
  PidFile:设置用于保存httpd进程号(PID)的文件
  CharsetDefault:设置站点中的网页默认使用的字符集编码,如UTF-8
  lnclude:包含另一个配置文件的内容
  2.区域配置项
  除了全局配置项以外,httpd.conf文件中的大多数配置是包括在区域中的。区域配置使用一对组合标记,限定了配置项的作用范围。
  常见的目录区域配置的形式如下所示:
      //定义“/”目录区域的开始
  Options FollowSymLinks//控制选项,允许使用符号链接
  AllowOverride None    //不允许隐含控制文件中的覆盖配置
  Order deny,allow   //访问控制策略的应用顺序
  Deny from all       //禁止任何人访问此区域
     //定义“/”目录区域的结束
四.基于域名的虚拟主机
1.为虚拟主机准备网页文档
      mkdir /var/www/html/bjcom
      mkdir /var/www/html/shcom
      echo “www.beijing.com”/var/www/html/bjcom/index.html
      echo “www.shanghai.com” /var/www/html/shcom/index.html

2.添加虚拟主机配置
在httpd服务器的主配置文件中,修改一下内容
a)监听地址:使用NameVirtualHost配置项指定提供虚拟主机服务的ip地址
b)虚拟主机区域:使用。。。。。。区域配置,为每一个虚拟主机建立独立的配置内容。
c)目录权限:使用。。。。。。。。区域配置,为每一个虚拟主机的网站目录设置访问权限,

(1)vi/usr/local/httpd/conf/extra/httpd-vhosts.conf

(2)修改主配置文件
Include conf/extra/httpd-vhosts.conf   //加载独立的配置文件,去掉#号
五.基于ip地址的虚拟主机
(1)vi/usr/local/httpd/conf/extra/httpd-vhosts.conf

(2)修改主配置文件
Include conf/extra/httpd-vhosts.conf   //加载独立的配置文件,去掉#号
六.基于端口的虚拟主机
(1)vi/usr/local/httpd/conf/extra/httpd-vhosts.conf

(2)修改主配置文件
Include conf/extra/httpd-vhosts.conf   //加载独立的配置文件,去掉#号
Listen 192.168.1.20:80             //监听80端口
Listen 192.168.1.20:8080      //监听8080端口
  



附件:http://down.51cto.com/data/2367544

页: [1]
查看完整版本: Apache网站服务基础