zoukankan      html  css  js  c++  java
  • centos7搭建apache服务以及部署网站的方法

    1.做实验之前先执行下面的关闭防火墙和selinux操作

    关闭防火墙:

    systemctl stop firewalld         --临时关闭防火墙

    systemctl disable firewalld    --永久关闭防火墙

    关闭selinux:

    临时关闭:

    setenforce 0

    永久关闭:

    vim /etc/selinux/config

    SELINUX=disabled                 # 将enforcing改为disabled

    reboot   --重启系统永久生效

    开始安装apache服务:

    2.使用yum安装:

    yum install httpd -y

    提示complete 一般就是安装成功了,可以使用yum info httpd检查是否安装成功,安装的版本等

    3.修改配置文件

    安装完成后,一般我们需要修改主配置文件,目录:/etc/httpd/conf/httpd.conf

    使用vi /etc/httpd/conf/httpd.conf 打开它,可以看到下面这些配置

    ServerRoot

    服务目录,存放配置文件的目录

    ServerAdmin

    管理员邮箱

    User

    运行服务的用户

    Group

    运行服务的用户组

    ServerName

    网站服务器的域名

    DocumentRoot

    网站数据目录,站点路径,默认:/var/www/html

    Listen

    监听的端口号

    DirectoryIndex

    默认的索引页页面

    ErrorLog

    错误日志文件

    CustomLog

    访问日志文件

    Timeout

    网页超时时间,默认为300秒.

    Include

    需要加载的其他文件

    Options Indexes FollowSymLinks   # 找不到主页时,以目录的方式呈现,并允许链接到网站根目录以外

    AllowOverride None         # none不使用.htaccess控制,all允许

    Require all granted        # granted表示运行所有访问,denied表示拒绝所有访问

    AddDefaultCharset UTF-8      # 字符编码,如果中文的话,有可能需要改为gb2312或者gbk,因你的网站文件的默认编码而异

    修改httpd.conf的AllowOverride值,改成All,这里会有好几个地方都需要修改。

    4.启动apache服务

    systemctl start httpd

    如果启动服务后又修改了配置文件,需要重启服务,systemctl restart httpd

    启动服务后,可以尝试写个简单网页,检查能否打开网页。

    5.测试网站

    输入命令:

    vi /var/www/html/index.html

    打开文件后,随便输入一些值,比如hello linux

    打开windows电脑的浏览器,输入搭建了apache服务的linux电脑的ip,显示hello linux就搭建成功了。

    6.部署多个网站

    有时候会有需求要将多个网站同时部署在一台服务器上

    先创建一个extra文件夹:

    mkdir /etc/httpd/conf/extra/

    进入到该目录下:

    cd /etc/httpd/conf/extra/

    创建一个文件:

    vi httpd-vhosts.conf

    输入以下内容:

    <VirtualHost *:80>

        ServerAdmin xx@qq.com   # 管理员邮箱,网站故障会给该邮箱发送邮件

        DocumentRoot "/var/www/test1/"        # 指定网站www.abc.com的站点目录

        ServerName www.abc.com          # 指定网站域名

        ServerAlias abc.com              # 指定网站别名

        ErrorLog "logs/www-error_log"   # 指定错误日志目录

        CustomLog "logs/www-access_log" common # 指定访问日志目录

    </VirtualHost>

    <VirtualHost *:80>          #只有顺序上的第一个虚拟主机可以配置别名,别的配了也没用

        ServerAdmin xx@qq.com

        DocumentRoot "/var/www/test2"

        ServerName blog.test.com

        ErrorLog "logs/blog-error_log"

        CustomLog "logs/blog-access_log" common

    </VirtualHost>

    这里配置了两个VirtualHost就表示支持两个网站,如果是两个以上,那就再继续加VirtualHost,但是也不建议一台服务器上太多网站,担心相互之间会有影响。

    注意将注释的内容删掉,不然会有语法错误。

    然后打开主配置文件,vi /etc/httpd/conf/httpd.conf

    增加一句话,引用虚拟主机配置文件:

    Include conf/extra/httpd-vhosts.conf

    检查是否有语法错误:

    apachectl -t

    重启服务:

    apachectl graceful

    或者systemctl restart httpd

    修改本地hosts文件

    打开C:WindowsSystem32driversetchosts文件,添加如下内容:

    192.168.235.82 www.abc.com blog.abc.com abc.com

    注意:hosts文件不能直接编辑,需要修改以下权限,右键hosts,点属性,打开后,选择“安全”选项卡,点击“编辑”,将权限都勾选上,确定后再添加hosts

    这样改的目的是什么呢?主要是因为我们的域名www.abc.com不是真实在互联网注册过的,DNS服务器就解析不到该域名,浏览器在找DNS服务器之前会先找hosts文件,所有可以修改hosts文件,使其能通过域名找到我们的IP

    接下来在/var/www/test1中新建一个index.html,输入内容test1111

    在/var/www/test2中新建一个index.html,输入内容test2222

    打开浏览器输入网址www.abc.com 就可以看到test1111

    输入blog.test.com就可以看到test2222

    这样就完成了。

    参考链接:

    https://www.cnblogs.com/fisherpau/p/11375874.html

    https://blog.csdn.net/qq_36700059/article/details/94876829

  • 相关阅读:
    nginx的tcp/udp代理
    centos7的systemd服务详解
    centos7下ssh服务登陆认证详解
    laravel实现敏感词汇过滤
    laravel使用阿里云短信发送消息
    laravel中使用极光推送消息
    gitlab与jenkins结合构建持续集成
    gitlab的安装配置与简单使用
    centos7之firewalld防火墙的配置与使用
    使用码云,GitHub进行版本控制,并通过WebHook进行自动部署
  • 原文地址:https://www.cnblogs.com/sy_test/p/13618593.html
Copyright © 2011-2022 走看看