zoukankan      html  css  js  c++  java
  • Centos7源码部署apache/httpd服务

    httpd:是一个提供网站服务的程序

    监听端口:80

    环境准备:

    Linux CentOS7.3系统

    使用一台服务端,一台客户端即可;

    一、安装httpd

    1:安装

    [root@localhost ~]# systemctl stop firewalld        

    [root@localhost ~]# setensorce  0    

     

    [root@localhost ~]# rpm -e httpd –nodeps                 #卸载系统自带的httpd

    [root@localhost ~]# mkdir /media/cdrom                 #创建挂载点文件夹

    [root@localhost ~]# mount /dev/cdrom /media/cdrom          #挂载光盘

    [root@localhost ~]# yum -y install gcc* apr-devel apr-util-devel pcre-devel     #安装开发包

     

    [root@localhost ~]# tar zxvf httpd-2.4.25.tar.gz                      #解压缩包

    [root@localhost ~]# cd httpd-2.4.25

    [root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi     

    注释:

    --prefix:制定程序的安装目录

    --enable-so:启用动态加载模块DSO的支持,使httpd具备进一步扩展功能的能力

    --enable-rewrite:启用网页地址重写功能,用于网站优化

    --enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页

    --enable-cgi:启用cgi脚本程序支持,扩展网站的应用访问能力

     

    [root@localhost httpd-2.4.25]# make && make install          

    [root@localhost httpd-2.4.25]# ls /usr/local/httpd      

    [root@localhost httpd-2.4.25]# /usr/local/httpd/bin/apachectl  start 

    [root@localhost httpd-2.4.25]# netstat -anpt |grep httpd 

    [root@localhost httpd-2.4.25]# /usr/local/httpd/bin/apachectl  stop       

    [root@localhost httpd-2.4.25]# netstat -anpt |grep httpd 

     

    2:优化执行路径

    [root@localhost httpd-2.4.25]# ln -s /usr/local/httpd/bin/* /usr/local/bin/    

    [root@localhost httpd-2.4.25]# ls -l /usr/local/bin/httpd /usr/local/bin/apachectl  

     #查看软连接

    [root@localhost httpd-2.4.25]# httpd  -v                                     

    [root@localhost httpd-2.4.25]# apachectl  start                             

    [root@localhost httpd-2.4.25]# netstat -anpt |grep httpd          

    [root@localhost httpd-2.4.25]# apachectl  stop              

    [root@localhost httpd-2.4.25]# netstat -anpt |grep httpd        

    3:添加httpd系统服务

    使用chkconfig添加为系统服务

    [root@localhost httpd-2.4.25]# cp /usr/local/httpd/bin/apachectl  /etc/init.d/httpd              #复制配置文件

    [root@localhost httpd-2.4.25]# vi /etc/init.d/httpd                         //编辑配置文件

    添加:

    #!/bin/sh        

    #chkconfig:35 85 21         

    #description:httpd server

    [root@localhost httpd-2.4.25]# chkconfig --add httpd           #加入系统服务,开机启动

    [root@localhost httpd-2.4.25]# chkconfig --list httpd       

    [root@localhost httpd-2.4.25]# service httpd start                   #启动httpd

     

    二、httpd服务器的基本配置

    1:确定网站的名称、ip地址和域名

    2:配置并启动httpd

    [root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

    修改(前面的数字是行号):

        ServerName www.bdqn.com           ##200行        

     

    [root@localhost ~]# apachectl -t                                               #检测配置文件语法

    2:启动httpd服务

    [root@localhost ~]# systemctl start httpd                                 #启动httpd

    [root@localhost ~]# netstat -anpt | grep httpd      

    3:部署网页

    [root@localhost ~]# vim /usr/local/httpd/htdocs/index.html         #编辑主页

    <html><body><h1>It works!</h1></body></html>

    [root@localhost ~]# service httpd restart                                          #重启httpd服务

     

    4:测试

    打开网站

    http://192.168.10.101

     

    5:查看站点访问情况

    [root@localhost ~]# tail /usr/local/httpd/logs/access_log  

    [root@localhost ~]# tail /usr/local/httpd/logs/error_log    

     

     

    三、httpd.conf配置文件解释

    1:全局配置项

    [root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

    ServerRoot "/usr/local/httpd"      

    Listen 80                                                                  #监听端口(默认80)

    User daemon                                                          #用户     (默认daemon)

    Group daemon                                                       #用户组(默认daemon)

    ServerAdmin you@example.com                          #邮箱地址

    ServerName www.bdqn.com                         #网站域名

    DocumentRoot "/usr/local/httpd/htdocs"           #网页存储位置

    DirectoryIndex index.html                                     #默认主页

    ErrorLog "logs/error_log"                                      #错误日志文件存储位置

    LogLevel warn                                                        #日志级别

    CustomLog "logs/access_log" common               #正常访问日志

     

    Include conf/extra/proxy-html.conf                     #虚拟主机路径

     

     

    2:区域配置项

    [root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf

    <Directory />                      #根目录

        AllowOverride none

        Require all denied

    </Directory>

     

    <Directory "/usr/local/httpd/htdocs">    #限制路径

        Options Indexes FollowSymLinks

        AllowOverride None

        Require all granted                  #允许所有主机访问还可以拒绝所有人访问

    </Directory>

     

     

     

  • 相关阅读:
    .net core 使用Https总结
    移动宽带丢失gzip
    .net core 3.0 3.1 在docker 下报SSL Handshake failed with OpenSSL error
    使用sequelize-auto 生成mysql 表的实体时主键没有 autoIncrement: true 属性
    asp.net core 控制静态文件的授权
    我用asp.net core 部署到docker遇到的问题
    docker 命令 记录
    docker 容器连接 host的sql server失败
    asp.net core spa应用(angular) 部署同一网站下
    Java使用算数运算符实现两个整数互换
  • 原文地址:https://www.cnblogs.com/-bobo/p/11643073.html
Copyright © 2011-2022 走看看