Mac下配置Apache服务器

    Apache HTTP Server是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

    在开发过程中,有时我们可能需要在后台接口没有及时给出的情况下自己模拟一些数据来进行相关的测试,这个时候我们可以选择配置本地服务器,不用时刻等着后台接口的更新,只需要根据接口文档自己模拟真实数据。

    在Windows环境下,我们需要到 Apache官网 下载最新版的Apache Server包。而Mac自带了Apache环境,我们只需要稍微配置一下就可以使用了。

启动Apache

在终端输入:sudo apachectl start,这样就将Mac自带的Apache启动了,在浏览器输入“http://localhost”,会显示“It works!”,说明服务器已经启动成功了。Apache默认的根目录在“/Library/WebServer/Documents/”下。

配置Apache服务器

1.打开终端,输入mkdir Sites,在当前目录中创建一个目录名为Sites,文件的路径为/Users/username/Sites,用于我们以后设置服务器的默认路径。

2.接着输入cd /etc/apache2,将工作目录切换到apache2下,etc目录处在系统根目录中。

3.将配置文件备份,防止出现错误操作无法恢复。 sudo cp httpd.conf httpd.conf.bak,即将httpd.conf拷贝一份备份,如果出现操作错误想要恢复备份,只要sudo cp httpd.conf.bak httpd.conf,将备份文件拷贝回原文件。

4.使用vim编辑httpd.conf配置文件,输入sudo vim httpd.conf,输入密码后显示如下内容:

Mac下配置Apache服务器_第1张图片

5.输入“/”,控制台下方出现“/”,即可在vim模式下进行关键字查询。在“/”后输入DocumentRoot,回车:

ps:在进行关键字定位时,按下n可以定位到下一个关键字,按下N可以定位到上一个关键字。

Mac下配置Apache服务器_第2张图片

按下i进入编辑模式,将图中的DocumentRoot和Directory后的路径改为刚才创建的Sites目录的完整路径。按esc退出编辑模式。

6.接下来用同样的方法定位到Options FollowSymLinks,将其改成Options Indexes FollowSymLinks。

7.继续修改,定位到php7_module,将这一行前面的#注释去掉。

按esc退出编辑模式,再输入:wq保存并退出vim模式。

8.切换工作目录到cd /etc下,拷贝php.ini文件:sudo cp php.ini.default php.ini。

重新启动Apache服务器

在终端输入 sudo apachectl -k restart,启动服务器,然后在浏览器地址栏输入127.0.0.1,访问结果如下:

Mac下配置Apache服务器_第3张图片

这样我们就可以通过浏览器从本地服务器访问我们自己的页面了。在Sites目录下创建一个html页面

浏览器输入127.0.0.1/mytest/001/helloworld,访问结果如下

Mac下配置Apache服务器_第4张图片

配置本地域名

有的时候我们可能需要频繁的访问两个不同的路径下的不同资源,例如通过浏览器我们要访问 127.0.0.1/mytest/001/helloworld 以及 127.0.0.1/mytest/mywebsite/hello 这两个文件,我们就可以通过配置本地域名的方法,为两个文件001和mywebsite分别设置一个本地域名便于访问,例如可以将www.001.com指向001,将www.mywebsite.com指向mywebsite,这样就会更加方便访问两个文件,也方便当多人用同一台电脑时区分自己的独立空间。

首先我们使用vim命令打开刚才修改过的httpd.conf文件,使用关键字定位的方法找到

#Include /private/etc/apache2/extra/httpd-vhosts.conf

并去掉前面的#号

输入sudo su进入超级管理员模式:

进入/etc/apache2/extra 中,打开httpd-vhosts.conf,修改其中配置为:

Mac下配置Apache服务器_第5张图片

 

保存并退出,然后打开/etc/hosts,在vim下加入

保存并退出,即可配置好本地域名。

你可能感兴趣的:(网络编程,经验技巧)