一:由于MacOX系统下自带Apache环境,所以我们在Mac系统下用Apache配置。

  Mac系统:10.14.4

二:启动Apache

启动 在终端输入:sudo apachectl start
验证 在浏览器输入“http://localhost” 显示It works!说明服务器已经启动成功了

在Mac下Apache默认的根目录在“/Library/WebServer/Documents/”下,你也可以自己设置自己的文件夹,只需要在Apache的配置中修改就可以了。

三:配置服务器

1、在finder中新建一个文件夹

2、打开终端,切换工作目录下:cd /etc/apache2

3、备份文件,只需要执行一次:sudo cp httpd.conf httpd.conf.bak (这一步只是为了备份一下)

   如果操作出现错误!可以使用命令,恢复备份的 httpd.conf 文件:sudo cp httpd.conf.bak httpd.conf

4、用vim编辑httpd.conf文件,httpd.conf文件时Apache的配置文件:sudo vim httpd.conf

   会要求你输入密码,而后会出现如下界面:

 
 
5、接下来是修改httpd.conf文件  —— 这个文件就是Apache的配置文件。
   按住shift键,并且输入“ :”号进入vim命令模式(一定要在英文输入法状态下),搜索/DocumentRoot,
     找到图中对应位置将圈内路径改为之前创建的NetTest文件夹的路径。(备注:英文状态下 按 i 键进入输入模式修改路径)
 

6、之后找到Options FollowSymLinks:修改为Options Indexes FollowSymLinks,在两个单词间添加一个Indexes单词。

7、接下来查找php,:/php,定位到图中位置:

8、将这句代码前面的#去掉。最后 Esc退出, :wq保存并退出。

9、切换工作目录:cd /etc

10、拷贝php.ini文件:sudo cp php.ini.default php.ini

重新启动apache服务器

在终端输入:sudo apachectl -k restart

到这里就算是配置完了,这个时候如果在浏览器地址输入“http://127.0.0.1/”,看是否成功
 
可能报错:
 
(1) : Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message。
原因:ServerName未配置。
解决:打开配置文件 sudo vim /etc/apache2/apache2.conf        
   找到配置文件中这个地方: 改为localhost:80
 
 
(2):访问页面出现 Forbidden
You don't have permission to access / on this server.
原因:这是由于配置中没有打开访问配置,把下图中两处改为All和granted
https://www.80note.com/2019/01/451.html 此处有详细说明
 
 
这样就可以将Test文件夹中的目录列出来了。同一工作组里的电脑可以通过本电脑的ip地址来访问本电脑上的文件。
 
 
四:penSSL证书生成及Mac上Apache服务器配置HTTPS
 
先在桌面创建个SSL文件夹,用来放生成的私钥证书文件
打开终端cd到SSL文件夹   cd desktop/SSL

1. 自签名证书

(1) 在SSL文件夹中生成私钥 生成rsa私钥,2048位强度,server.key是秘钥文件名
   openssl genrsa -out server.key 2048 
(2) 生成自签名证书
 openssl req -new -sha256 -x509 -days 365 -key server.key -out server.crt
 
按顺序输入信息

Common Name应该与域名保持一致(如我的电脑搭建的服务器IP地址为192.168.1.112)

2. 配置Apache服务器SSL

(1) 放入证书

将server.crt和server.key两个文件拷贝

放到/etc/apache2/目录         (Finder中点击前往文件夹/etc即可打开etc文件夹)

(2) 修改配置文件

若是配置文件无法修改   只需要把途中位置改掉就好

  • 编辑/etc/apache2/httpd.conf文件
    找到去掉下面前边的注释#号

    LoadModule ssl_module libexec/apache2/mod_ssl.so
    Include /private/etc/apache2/extra/httpd-vhosts.conf
    Include /private/etc/apache2/extra/httpd-ssl.conf
    LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so

  • 打开/etc/apache2/extra/httpd-ssl.conf文件
    去掉以下两项注释并检查是否与之前安装私钥和证书的路径一致

    SSLCertificateFile "/private/etc/apache2/server.crt"
    SSLCertificateKeyFile "/private/etc/apache2/server.key"

  • 编辑/etc/apache2/extra/httpd-vhosts.conf文件
    在<VirtualHost *:80> .....</VirtualHost>后面添加一段如下内容:
<VirtualHost *:443>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /private/etc/apache2/server.crt
SSLCertificateKeyFile /private/etc/apache2/server.key
ServerName 192.168.1.112
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>

注意ServerName填写域名与所需访问一致

(3) 重启服务器
sudo apachectl restart

访问https://192.168.1.112/
提示不安全什么的(因为自己的证书没添加到浏览器信任列表),继续访问

 HTTPS访问成功
至此一个Mac上的apache服务器就搭好了,局域网内的小伙伴可以通过你的本级IP访问到你所设置的文件夹了
引用:https://www.jianshu.com/p/b2a9655fe687
 
 

Mac下用apache搭建一个局域网服务器的更多相关文章

  1. 实战:使用SVN+apache搭建一个版本控制服务器

    今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn   IP:192.168.10.63 服务概述: SVN(s ...

  2. Anroid搭建一个局域网Web服务器

    前言   很多开发者看到这个标题表示很怪异,Android怎么可能搭建服务器呢?根本用不到呀,这个项目毫无价值.我表示很理解这一类的开发者,毕竟每个人的经验经历都是有限的. 必须要说说我们的用处(需要 ...

  3. Mac下使用Apache TCPMon

    Mac下使用Apache TCPMon 参考链接: TCPMon Tutorial Anyone know how to get TCPMON working on a mac? Apache TCP ...

  4. mac下通过docker搭建LEMP环境

    在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew up ...

  5. RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难

    消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...

  6. linux下安装EJBCA 搭建私有CA服务器

    linux下安装EJBCA 搭建私有CA服务器 EJBCA是一个全功能的JAVA的CA系统软件,我们可以用此搭建私有CA服务器: 一:首先我的测试环境: 1.  linux mint18.3 62位: ...

  7. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  8. 【高可用HA】Apache (4) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk httpd版本: httpd-2.4.17 jk版本: tomcat-connectors-1.2.41 参考 ...

  9. 【高可用HA】Apache (3) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy httpd版本: httpd-2.4.17 参考来源: Apache (1) -- Mac下安装Apac ...

随机推荐

  1. Oracle 绑定变量窥视

    绑定变量窥视功能是数据库的一个特性,自ORACLE9i版本开始引入,默认是开启的. “绑定变量窥视”表示,查询优化器在第一次调用游标时,会观察用户定义的绑定变量的值,允许优化器来确认过滤条件的选择性, ...

  2. 页面打开excel

    1. File => Stream / MemoryStream FileStream stream = new FileStream(path, FileMode.Open, FileAcce ...

  3. TensorFlow(十八):从零开始训练图片分类模型

    (一):进入GitHub下载模型-->下载地址 因为我们需要slim模块,所以将包中的slim文件夹复制出来使用. (1):在slim中新建images文件夹存放图片集 (2):新建model文 ...

  4. surprise库官方文档分析(三):搭建自己的预测算法

    1.基础 创建自己的预测算法非常简单:算法只不过是一个派生自AlgoBase具有estimate 方法的类.这是该方法调用的predict()方法.它接受内部用户ID,内部项ID,并返回估计评级r f ...

  5. 使用python画一颗圣诞树

    # -*- coding: utf-8 -*- # @Time : 18-12-26 上午9:32 # @Author : Felix Wang import turtle # 定义圣诞树的绿叶函数 ...

  6. SSD检测几个小细节

    目录 一. 抛砖引玉的Faster-RCNN 1.1 候选框的作用 1.2 下采样问题 二. SSD细节理解 2.1 六个LOSS 2.2 Anchor生成细节 2.3 Encode&& ...

  7. Arrays.toString的作用

    Arrays.toString()的作用是用来很方便地输出数组,而不用一个一个地输出数组中的元素. 这个方法是是用来将数组转换成String类型输出的,入参可以是long,float,double,i ...

  8. 走进JavaWeb技术世界14:通过项目逐步深入了解Mybatis(一)

    通过项目逐步深入了解Mybatis(一) 2017-06-12 文章导航 Mybatis 和 SpringMVC 通过订单商品案例驱动 官方中文地址:http://www.mybatis.org/my ...

  9. Flutter移动电商实战 --(47)详细页_Flutter_html插件的使用

    详情里面是hemlt和图片组成的,但是flutter是不支持html的所以需要其他插件 flutter webview plugin:这个不太好用 flutter_html:用这个插件 先解决之前一个 ...

  10. 分享CSS3里box-shadow属性的使用方法,包括内阴影box-shadow:inset

    一.box-shadow语法 box-shadow: none | inset(可选值,不设置,为外投影,设置,为内投影) x-offset(阴影水平偏移量,正方向为right) y-offset(阴 ...