• Mac Apache WebServer 服务器配置


    <br/ >

    本文已停止更新,点击此链接查看本文最新内容 !!!



    前言

    • Apache 是目前使用最广的 Web 服务器,可以支持各种脚本的执行。
    • Mac 系统自带,无需单独安装,只需要修改几个配置就可以,简单,快捷。
    • 有些特殊的服务器功能,Apache 都能很好的支持。例如:HTTP PUT/DELETE 等操作。

    1、配置准备工作

    • 1)配置服务器需要做的工作

      • 在 Finder 中创建一个 "ApacheWebServer" 的文件夹,可直接创建在 /Users/QianChia(当前用户名)目录下。
      • 修改配置文件中的 "两个路径",指向刚刚创建的文件夹。
      • 修改一个 Options 配置项。
      • 反注释一个文件路径配置。
      • 拷贝一个文件。
    • 2)配置服务器时的注意事项

      • 关闭中文输入法。
      • 命令和参数之间需要有 "空格"。
      • 修改系统文件一定记住 "sudo",否则会没有权限。
      • 目录要在 /Users/QianChia(当前用户名)目录下。
    • 3)示例配置环境

      • macOS 10.11.6
      • macOS 10.13.3
    • 4)WebServer 服务器测试文件

    2、配置服务器

    • 打开终端,按照下面的操作开始配置,$ 开头的,可以直接拷贝,但是不要拷贝 $。

      # 创建 ApacheWebServer 文件夹
      $ mkdir ApacheWebServer
      
      # 切换工作目录
      $ cd /etc/apache2
      
      # 备份文件,以防不测,只需要执行一次就可以了,格式 cp (copy 的缩写) (源文件) (目标文件)
      # 如果后续操作出现错误,可以使用以下命令恢复  $ sudo cp httpd.conf.bak httpd.conf
      $ sudo cp httpd.conf httpd.conf.bak
      
      # 用 vim 打开 httpd.conf 文件(sudo 操作需要输入系统密码)
      $ sudo vim httpd.conf
      
      # 查找 DocumentRoot,命令模式下输入 /(查找内容),区分大小写,回车跳转到查找的内容处
      /DocumentRoot
      
      # 将光标移动到 DocumentRoot 所在行
      
        DocumentRoot "/Library/WebServer/Documents"
        <Directory "/Library/WebServer/Documents">
      
      # 进入编辑模式,将光标移动到 DocumentRoot 所在行,直接按键盘上的 i 键
      i
      
      # 修改引号中的路径为上面在 Finder 中创建的路径,如下
      
        DocumentRoot "/Users/QianChia/ApacheWebServer"
        <Directory "/Users/QianChia/ApacheWebServer">
      
      # 往下滑动找到 Options FollowSymLinks Multiviews 行
      # Mac 10.10+ 系统的 Apache 需要修改这一行
      
        Options FollowSymLinks Multiviews
      
      # 在 Options 与 FollowSymLinks 之间插入 Indexes
      
        Options Indexes FollowSymLinks Multiviews
      
      # 进入命令模式,直接按键盘上的 esc 键
      esc
      
      # 查找 php,命令模式下输入 /(查找内容),区分大小写,回车跳转到查找的内容处
      /php
      
      # 将光标移动到 #LoadModule php5_module libexec/apache2/libphp5.so 行首
      # 高版本系统为 #LoadModule php7_module libexec/apache2/libphp7.so 行首
      # 命令模式下直接按键盘上的 0 键
      0
      
        #LoadModule php5_module libexec/apache2/libphp5.so  或
        #LoadModule php7_module libexec/apache2/libphp7.so
      
      # 删除行首注释 #,命令模式下直接按键盘上的 x 键
      x
      
        LoadModule php5_module libexec/apache2/libphp5.so  或
        LoadModule php7_module libexec/apache2/libphp7.so
      
      # 保存并退出,命令模式下输入 :wq ,不保存退出为 :q!
      :wq
      
      # 切换工作目录,etc 目录有点类似于 windows/system32,存放配置文件的目录
      $ cd /etc
      
      # 拷贝 php.ini 文件
      $ sudo cp php.ini.default php.ini
      
      # 重新启动 apache 服务器
      $ sudo apachectl -k restart
      
      # 如果出现以下提示,表示配置完成
      
        httpd: Could not reliably determine the server's fully qualified domain name, using 
        MacBookAir.local. Set the 'ServerName' directive globally to suppress this message
      
      # 设置开机自动启动
      $ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
      
      # 将服务器脚本文件放到前面设置的 ApacheWebServer 文件夹中。
      # 打开浏览器,在浏览器地址栏中输入服务器地址
      # 如      http://127.0.0.1 
      # 或者输入 http://localhost 
      # 或者输入 http://本机 IP 地址 进行测试,
      # 能够进入到 “Index of /” 页面表示配置成功。
      

    3、常见问题

    • 1)如果点击服务器网站资源中的 info.php 文件,出现下载,或者只是显示一小段文字

      在终端中输入以下两个命令:
      
        $ sudo apachectl -k stop        // 关闭 apache 服务器
      
        $ sudo apachectl -k start       // 重新再次启动 apache 服务器
      
    • 2)每次启动计算机,Apache 服务器默认是不会自动启动

      可以启动计算机之后,打开终端,输入以下命令:
      
        $ sudo apachectl -k start        // 启动 apache 服务器
      
      设置开机启动:
      
        $ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
      
      关闭开机启动:
      
        $ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
      
    • 3)执行脚本的时候,显示没有权限,拒绝访问。或者在 “Index of /” 页面无法显示具体内容。

      • 用 NTFS 格式的 U 盘拷贝网络素材,会把文件本身的权限过滤掉。
      在终端中修改文件的权限:
        
        将指定的文件权限修改为 -rw-r--r--  -读写-只读-只读-,644(110 100 100)
        
        $ ls -la                                // 查看当前文件夹中的文件访问权限
        
        $ chmod 644 info.php (没有权限的文件名)    // 将指定的文件权限修改为 -rw-r--r-- 
        
        $ chmod 644 *.*                         // 将所有的文件权限修改为 -rw-r--r--
      
  • 相关阅读:
    Linux操作系统定时任务系统 Cron 入门
    ssh命令远程登录
    jQuery 中 attr() 和 prop() 方法的区别
    javascript深入理解js闭包
    怎样使用Markdown
    顺颂商祺
    利用Code128字体将文本转换为code128条形码
    如何看懂Code128条形码
    SSH原理及操作
    ssh 22端口号拒绝
  • 原文地址:https://www.cnblogs.com/QianChia/p/8531841.html
Copyright © 2020-2023  润新知