• PHP环境搭建和Apache HTTP服务器配置


    所需软件:

    需要准备Apache HTTP 服务器:

    http://httpd.apache.org/download.cgi

    PHP环境下载:
    http://www.php.net/downloads.php

    Apache HTTP服务器安装:

    由于最新的 Apache 已经不提供 Windows 的安装版本了,所以我们这里使用的是解压版。
    下载地址:https://www.apachelounge.com/download/
    使用说明:https://httpd.apache.org/docs/current/platform/windows.html
    安装方式如下,先解压到纯英文路径的文件夹,然后执行以下命令:

    # 注意:需要使用管理员身份运行命令行!!! 
    # 切换到  Apache 解压路径中的  bin 目录 
    $ cd <解压目录>/bin 
    # 安装  Apache 服务,‐n 参数是指定服务名称 
    $ httpd.exe ‐k install ‐n "Apache" 
    # 如果需要卸载 Apache,可以执行以下命令 
    $ httpd.exe ‐k uninstall ‐n "Apache"

    执行安装命令过后会报一个错,原因是默认的配置文件有问题,需要先调整一下配置文件 conf/httpd.conf ,才能 正常启动服务。

     

    找到 Apache 解压目录中的 conf 目录下的 httpd.conf 文件,定位到 37 行,将 c:/Apache24  改为解压目录,我这 里解压到路径是 C:/Develop/apache ,所以我这里修改

    修改完以后,执行以下命令重新测试配置文件是否通过。

    $ httpd.exe ‐t

    这里任然报错:

     通过错误信息得知,这里是因为另外一个地方配置的目录不存在导致的,所以接着调整 246 行的 DocumentRoot 选项:

    随即,我们发现这个配置文件中有很多默认配置选项中的路径都是 c:/Apache24 ,所以我们批量都修改为我们解 压的目录路径。
    然后重新执行 httpd.exe -t  测试配置文件,这时候应该提示 Syntax OK 。
    如果有关于 ServerName  的警告提示,不用管它,暂时还不会影响我们接下来的使用和操作。
    接着运行以下命令重新启动 Apache 服务:

    # 注意:需要使用管理员身份运行命令行!!! 
    $ httpd.exe ‐k start ‐n "Apache" 
    # 重新启动  Apache 服务 
    $ httpd.exe ‐k restart ‐n "Apache" 
    # 停止  Apache 服务 
    $ httpd.exe ‐k stop ‐n "Apache"

    回到浏览器中,地址栏输入:http://localhost/,回车访问,这时正常应该看到 It works!

    Apache HTTP服务器的虚拟主机配置:

    如果一台机器上只有一个网站的话,没有任何问题,但是如果想要在一台机器上部署多个站点,就必须通过配置虚 拟主机的方式解决。
    由于后期对虚拟主机的配置操作非常常见,所以我们一般将虚拟主机的配置单独放到一个配置文件中,然后 在主配置文件中引入,避免破坏主配置文件中的其他配置。
    Include conf/extra/httpd-vhosts.conf  配置的作用就将另外一个配置文件引入(使其生效)
    具体的操作方式就是在主配置文件 httpd.conf  的 505 行取消注释:

    然后找到 Apache 的虚拟主机配置文件,添加一个如下的虚拟主机配置节点,然后重新启动 Apache。 这个文件中有两个默认的示例配置,可以注释掉

    如果真的要使用 baixiu.com  这个域名的话,就只能通过修改 hosts  文件的此域名对应Apache HTTP服务器ip达到目的(由于是安装在本机将此域名对应的ip修改为本机ip 127.0.0.1),原因很简单:这个域名不是 我们自己的,我们没有办法修改这个域名在公网上的 DNS。
    注意:
    如果使用了虚拟主机,则默认必须全部使用虚拟主机,即之前的默认网站也必须通过虚拟主机方式配 置,否则访问不到。参考:http://skypegnu1.blog.51cto.com/8991766/1532454
    如果虚拟主机的端口使用的不是 80 ,则需要在主配置文件中添加一个对这个端口的监听:

    虚拟主机的无法访问根目录Error:

    在配置虚拟主机的配置文件中添加一个Directory标签配置指定的根目录允许访问

    <VirtualHost *:80>
        # 服务器域名 (还需要在hosts文件中将此域名指向本机)
        ServerName suyi.com
        # 配置根目录允许访问
        <Directory "D:HttpD-2.4.34-win64-VC15apachedocs2">
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
        </Directory>
        # DocumentRoot 根目录 写绝对路径
        DocumentRoot "D:HttpD-2.4.34-win64-VC15apachedocs2"
        # 错误日志
        ErrorLog "logs/suyi.net-error.log"
        # 本虚拟主机的访问日志
        CustomLog "logs/suyi.net-access.log" common
    </VirtualHost>

    配置 PHP 环境支持:

    在服务器上安装 PHP
    解压 php 到纯英文路径目录中
    在 Apache HTTP服务器配置文件 httpd.conf 中添加支持 PHP 的配置
    在 httpd.conf 添加 PHP 处理模块

    # php support 
    # 这个模块不是根据后缀判断是否该 PHP 工作,而是根据MIME TYPE 是不是 application/x-httpd-php
    LoadModule php7_module PHP解压路径/php7apache2_4.dll

    在 <IfModule mime_module>  节点中添加 .php  扩展名解析支持

     # parse .php files
    AddType application/x‐httpd‐php .php

    默认文档配置节点 <IfModule dir_module>  中添加 index.php
    默认文档指的是在访问一个目录而不是具体文件名时,默认执行的文件名

    <IfModule dir_module> 
    DirectoryIndex index.html index.php 
    </IfModule>

    重启服务器 php文件就可以访问了

  • 相关阅读:
    gym 101480 Problem C: Cow Confinement 题解
    Uva 1072 Huffman Codes 题解
    NERC 2015 Hypercube 题解
    ACM ICPC 2017 WF Problem J Son of Pipe Stream题解
    CF Round # 295 (Div. 1)题解
    CF 1444 D Rectangular Polyline 题解
    BZOJ3308 九月的咖啡店
    BZOJ4025 二分图
    BZOJ4000 [TJOI2015]棋盘
    BZOJ3999 [TJOI2015]旅游
  • 原文地址:https://www.cnblogs.com/sybk/p/10004708.html
Copyright © 2020-2023  润新知