Mac下用apache搭建一个局域网服务器
一:由于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
会要求你输入密码,而后会出现如下界面:


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


cd desktop/SSL
1. 自签名证书
(1) 在SSL文件夹中生成私钥 生成rsa私钥,2048位强度,server.key是秘钥文件名
openssl genrsa -out server.key 2048
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/
提示不安全什么的(因为自己的证书没添加到浏览器信任列表),继续访问
Mac下用apache搭建一个局域网服务器的更多相关文章
- 实战:使用SVN+apache搭建一个版本控制服务器
今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn IP:192.168.10.63 服务概述: SVN(s ...
- Anroid搭建一个局域网Web服务器
前言 很多开发者看到这个标题表示很怪异,Android怎么可能搭建服务器呢?根本用不到呀,这个项目毫无价值.我表示很理解这一类的开发者,毕竟每个人的经验经历都是有限的. 必须要说说我们的用处(需要 ...
- Mac下使用Apache TCPMon
Mac下使用Apache TCPMon 参考链接: TCPMon Tutorial Anyone know how to get TCPMON working on a mac? Apache TCP ...
- mac下通过docker搭建LEMP环境
在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew up ...
- RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...
- linux下安装EJBCA 搭建私有CA服务器
linux下安装EJBCA 搭建私有CA服务器 EJBCA是一个全功能的JAVA的CA系统软件,我们可以用此搭建私有CA服务器: 一:首先我的测试环境: 1. linux mint18.3 62位: ...
- Linux中搭建一个ftp服务器详解
来源:Linux社区 作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...
- 【高可用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 参考 ...
- 【高可用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 ...
随机推荐
- CSP模拟赛 Matrix(DP)
题面 求出满足以下条件的 n*m 的 01 矩阵个数: (1)第 i 行第 1~li 列恰好有 1 个 1. (2)第 i 行第 ri~m 列恰好有 1 个 1. (3)每列至多有 1 个 1. n, ...
- TDOA 之TDOA算法python实现
这里指的TDOA算法,实际是解两个双曲线方程,由于两个二次方程设计东西较多,如果强解,计算量很大,从网上参考了如下链接: 算法推到:https://blog.csdn.net/lpsl1882/art ...
- 关于File.separator 文件路径:wind与linux下路径问题 .
最近有个在页面上传Excel文件至服务器指定目录并进行数据校验.最后入库及进行进一步处理的应用情境,我写好代码在模拟环境下测试,完全没问题:但客户试用的时候,却老是报告“No such file or ...
- 普通的java Ftp客户端的文件上传
关于ftp上传文件其实并不难,但有时候面对现实的环境还是很蛋疼的,今天我就分享一下,普通的上传文件文件至FTP的方式,它满足大部分FTP,但也有特别的,下篇博客会提及到. 下面我用一个FtpUtil, ...
- 使用DOS命令将类库封装成dll
1.Windows键+R.输入cmd进入DOS 2.使用 cd 加路径找到需要封装成dll的类库文件 3.csc /target:library /out:dll的名字.DLL 需要封装的cs文件
- NodeJS基础知识
console.log方法: console.log("This is a test string"); node app.js 使用重定向标准输出流: node app.js 1 ...
- Web前端-JavaScript基础教程下
Web前端-JavaScript基础教程下 <script>有6个属性: async对外部脚本有效,可以用来异步操作,下载东西,不妨碍其他操作. charset为src属性指定字符集. d ...
- js的模块化之路
在ES6之前,官方没有出来import export这种模块化的语法. 为了提高代码复用.避免污染全局,民间写了很多模块化的实现: 1. 立即执行函数 (function(globalVariable ...
- 理解 java 使用 异或 交换两数
网上看了一些使用异或交换两数,不是很好理解.现在写一下自己的理解. 首先是 异或原则,对于任意 x: x ^ x == 0; x ^ 0 == x; 思路: 根据原则,可以得到两个公式: 求a: ...
- Cannot initialize a variable of type 'Stu *' with an rvalue of type 'void *'
code: 将 Stu* pStu = malloc(sizeof(Stu)); 改为Stu* pStu = (Stu*)malloc(sizeof(Stu)); code #include < ...