昨天在调试Mac自带的Apache+PHP配置域名时,调试的让我怀疑人生。顿时心里一万个草泥马,我就是配置个虚拟域名啊,这么让我受伤 。

1 首先检查一下Apache是否开启,

qutao@bogon  ~/workspace  apachectl -version
Server version: Apache/2.4. (Unix)
Server built: Apr ::
qutao@bogon  ~/workspace 

2 再看看PHP是否正常开启

 qutao@bogon  ~/workspace  PHP -v
PHP 7.1. (cli) (built: Apr ::) ( NTS )
Copyright (c) - The PHP Group
Zend Engine v3.1.0, Copyright (c) - Zend Technologies
qutao@bogon  ~/workspace 

发现 Apache+PHP都正常运行 那就OK

3 配置项目路径,我自己的项目路径是 /Users/qutao/workspace,而Apache默认的项目路径在/Library/WebServer/Documents

修改文件/private/etc/apache2/httpd.conf的项目入口目录

# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/Users/qutao/workspace" #同时打开PHP7 LoadModule php7_module libexec/apache2/libphp7.so

#LoadModule perl_module libexec/apache2/mod_perl.so

4 该配置Apache的虚拟主机名了

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

<VirtualHost *:>
DocumentRoot "/Users/qutao/workspace"
ServerName local_dev.com
# ErrorLog "/private/var/log/apache2/test-error_log"
# CustomLog "/private/var/log/apache2/test-access_log" common <Directory "/Users/qutao/workspace">
AllowOverride none
Require all denied
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

5 修改一下hosts  目录结构/private/etc/hosts

127.0.0.1       localhost
255.255.255.255 broadcasthost
:: localhost
127.0.0.1 local_dev.com

6 配置完重启一下 Apache

 sudo apachectl restart

开始访问自己的主机名local_dev.com

浏览器就开始未找到域名地址,这就纳闷了 怎么还这样了呢

然后我就开始看下Apache 的日志啦 , 也没看出啥端倪,看着都没啥毛病,就是访问不通呢

然后我就吧 虚拟主机的访问的日志 及错误日志都打开 再试试看 ,最后还是无果

那我就改个域名试试,抱着试试的态度

127.0.0.1       localdev.com

虚拟主机名字也改为同上,然后在访问一下奇迹了

然后就开始了我的百度问答,为什么local_dev.com, apahce不支持呢, localdev.com 就可用呢?

把百度的别人的原话粘贴过来

其实这里有个RFC 952规范 :

A "name" (Net, Host, Gateway, or Domain name) is a text string up to 24 characters drawn from the alphabet (A-Z), digits (0-9), minus sign (-), and period (.)

//规范指出域名只能是字母、数字和短线(-)还有点(.)。

不知道是否是这样Apache 就不进行解析了,可以请大家指教

MAC本apache+php配置虚拟域名时踩的坑的更多相关文章

  1. Apache本地配置虚拟域名

    转载+修改 例:虚拟域名为 aaa.com 端口为默认80 index.html所在目录  D:/wamp/www/web 不用解析域名,使用虚假的域名也可以 apache安装完默认是不开启虚拟服务器 ...

  2. The requested URL / was not found on this server——Apache配置虚拟域名后无法访问localhost

    今天为了做项目,在Apache中配置了项目域名,成功访问.但是忽然发现要访问localhost突然出现The requested URL / was not found on this server. ...

  3. linux下配置虚拟域名

    linux下配置虚拟域名 1.hosts文件位置! /etc/hosts 2.增加一行 127.0.0.1 xxxxx 3.修改apache中的vhosts vi /etc/httpd/extra/h ...

  4. LAMP环境搭建+配置虚拟域名

    Centos下PHP,Apache,Mysql 的安装 安装Apache yum -y install httpd systemctl start httpd 添加防火墙 firewall-cmd - ...

  5. 使用xampp在本地环境配置虚拟域名

    最近在学习ThinkPHP5.1.手册里面提到"实际部署中,应该是绑定域名访问到public目录,确保其它目录不在WEB目录下面."所以把使用xampp在本地配置虚拟域名的过程记录 ...

  6. phpstudy配置虚拟域名

    之前有一篇使用xampp配置虚拟域名,但是不同公司使用的集成环境不同,(xampp是我自己用的,别误解(><) !)这次使用的phpstudy,相比较而言,phpstudy更简单一点 首先 ...

  7. Spring Data JPA使用findAllOrderBy时踩的坑

    Spring Data JPA使用findAllOrderBy时踩的坑 按照以往的编程经验,我的写法是这样的: List<ActivityEntity> findAllOrderByWis ...

  8. 解决Apache配置虚拟主机时出现403错误的问题

    1.用文本编辑器打开Apache中的httpd.conf,搜索httpd-vhosts.conf,找到“#Include conf/extra/httpd-vhosts.conf”,并把“#”去掉,启 ...

  9. apache php配置 虚拟目录 和 虚拟主机 多域名配置 原理解析

    虚拟目录配置 就是说,我们放项目放在D盘,F盘,而不是默认的www文件夹下也可以访问.比如这里,我在 D:/PHP/work 放入的项目文件. 在httpd.conf加入: (位置一般是在 </ ...

随机推荐

  1. Jmeter日志级别

    转自:https://blog.csdn.net/gowhere_/article/details/78555068 Jmeter日志默认存放在%JMeter_HOME%\bin目录,文件名通常是JM ...

  2. Centos 使用yum安装MongoDB 4.0

    1.配置MongoDB的yum源 创建yum源文件: #cd /etc/yum.repos.d #vim mongodb-org-4.0.repo 添加以下内容:(我们这里使用阿里云的源) [mngo ...

  3. Tomcat热部署--start tomcat后就可自动部署war包

    使用tomcat图形化界面,需要现在配置文件中设置用户名和密码: 在maven中配置Tomcat插件: root目录下的内容可以直接访问: 跳过测试: 查看端口占用:

  4. c语言利用读取命令行(多行读取)

    #include<stdio.h> #include<stdlib.h> #include<string.h> int main() { FILE *fh = po ...

  5. 百度编辑器前后端二开图片上传Js Thinkphp tp5 ueditor

    百度编辑器图片上传Jsueditor.all.min.js 下载链接 链接:https://pan.baidu.com/s/1VNgw9ELgRRHKeCQheFkQTw 提取码:fnfi 使用方法: ...

  6. Linux lvs三种模式工作原理

    LVS:Linux Virtual Sevser,Linux虚拟服务器,由章文嵩先生成立的有关负载均衡的开源项目.基于Linux内核.优化后并发量可以达到百万级. NAT模式: NAT(Network ...

  7. Promise的源码实现(完美符合Promise/A+规范)

    Promise是前端面试中的高频问题,我作为面试官的时候,问Promise的概率超过90%,据我所知,大多数公司,都会问一些关于Promise的问题.如果你能根据PromiseA+的规范,写出符合规范 ...

  8. django-crontab实现定时任务

    django-crontab实现服务端的定时任务 安装 pip install django-crontab 在Django项目中使用 settings.py INSTALLED_APPS = ( ' ...

  9. 微信小程序中-折线图

    echarts配置项太多了,还是一点点积累吧~~~~~ 当然前提条件还是得老老实实看echarts官方文档 :https://echarts.baidu.com/ 今天主要就介绍下我在工作中通过ech ...

  10. 常用Hadoop命令(bin)

    **** bin 是二进制文件的意思,sbin....据说是superbin(管理员的bin) HDFS命令 某个文件的blocks信息 hadoop fsck /user/xx -files -bl ...