Mac OS X中配置Apache
我使用的Mac OS X版本是10.8.2,Mac自带了Apache环境。
- 启动Apache
- 设置虚拟主机
启动Apache
打开“终端(terminal)”,输入 sudo apachectl -v,(可能需要输入机器秘密)。如下显示Apache的版本
接着输入 sudo apachectl start,这样Apache就启动了。打开Safari浏览器地址栏输入 “http://localhost”,可以看到内容为“It works!”的页面。其位于“/Library(资源库)/WebServer/Documents/”下,这就是Apache的默认根目录。
Apache的安装目录在:/etc/apache2/,etc默认是隐藏的。有三种方式查看:
- dock下右键Finder,选择”前往文件夹”,输入”/etc”
- 在finder下----》前往---》前往文件夹,然后输入/etc
- 可以在terminal 输入 “open /etc”
设置虚拟主机
- 在终端运行“
sudo vi /etc/apache2/httpd.conf
”,打开Apche的配置文件 - 在httpd.conf中找到“
#Include /private/etc/apache2/extra/httpd-vhosts.conf
”,去掉前面的“#
”,保存并退出。 - 运行“
sudo apachectl restart
”,重启Apache后就开启了虚拟主机配置功能。 - 运行“
sudo vi /etc/apache2/extra/httpd-vhosts.conf
”,就打开了配置虚拟主机文件httpd-vhost.conf,配置虚拟主机了。需要注意的是该文件默认开启了两个作为例子的虚拟主机:123456789101112131415<
VirtualHost
*:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</
VirtualHost
>
<
VirtualHost
*:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "/usr/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" common
</
VirtualHost
>
而实际上,这两个虚拟主机是不存在的,在没有配置任何其他虚拟主机时,可能会导致访问localhost时出现如下提示:
Forbidden You don't have permission to access /index.php on this server
最简单的办法就是在它们每行前面加上#,注释掉就好了,这样既能参考又不导致其他问题。
- 增加如下配置
12345678910111213141516171819
<
VirtualHost
*:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ErrorLog "/private/var/log/apache2/localhost-error_log"
CustomLog "/private/var/log/apache2/localhost-access_log" common
</
VirtualHost
>
<
VirtualHost
*:80>
DocumentRoot "/Users/snandy/work"
ServerName mysites
ErrorLog "/private/var/log/apache2/sites-error_log"
CustomLog "/private/var/log/apache2/sites-access_log" common
<
Directory
/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
Allow from all
</
Directory
>
</
VirtualHost
>
保存退出,并重启Apache。
- 运行“
sudo vi /etc/hosts
”,打开hosts配置文件,加入”127.0.0.1 mysites
“,这样就可以配置完成sites虚拟主机了,可以访问“http://mysites”了,在10.8之前Mac OS X版本其内容和“http://localhost/~[用户名]”完全一致。 - 注意,记录log的“
ErrorLog "/private/var/log/apache2/sites-error_log"
”也可以删掉,但记录日志其实是一个好习惯,在出现问题时可以帮助我们判断。如果保留这些log代码,一定log文件路径都是存在的,如果随便修改一个不存在的,会导致Apache无法服务而没有错误提示,这个比较恶心。
203-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建-网站备案
202-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建-购买域名,配置域名解析
201-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建-安装Web服务器软件Nginx(.Windows系统)
111-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建测试-Android扫码绑定Air724,并通过MQTT和模组实现远程通信控制
101-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建-购买云主机,安装MQTT服务器软件(Linux系统)
101-STM32+Air724UG基本控制篇(自建物联网平台)-基础搭建-购买云主机,安装MQTT服务器软件(.Windows系统)
MQTT协议
3-STM32+Air724UG基本控制篇(自建物联网平台)-整体运行测试-微信小程序扫码绑定Air724,并通过MQTT和模组实现远程通信控制
2-STM32+Air724UG基本控制篇(自建物联网平台)-整体运行测试-Android扫码绑定Air724,并通过MQTT和模组实现远程通信控制
- 最新文章
-
SpringAop之日志(读配置文件方式)
[AWS] Using AWS Elastic Beanstalk
[Node.js] Ways for Environment Variables
[AWS] SSH into EC2 instanse
[Node.js] Sequelize Intro
[Node.js] Sequelize Intro
[Express] Designing the Application to be Extensible
[AWS] Create a S3 bucket with CORS settings
[AWS] Signed URL partten
[Postgres] Create VIEW for display join tables result
- 热门文章
-
[Git] A better git process
insufficient privilege oracle
鸿蒙系统开发环境
SERVERLESS ROADMAP: HOSTED AND INSTALLABLE PLATFORMS
SC2 合作模式指挥官评分排名
Overview of Cloud Native Security
Cloud native security for your clusters
9 Kubernetes security best practices everyone must follow
一份超详细的数据科学路线图!
资源|10个机器学习和深度学习的必读免费课程