由于开发需求,项目有时候需要设置虚拟域名进行测试。下面是分别是apache和nginx的配置

一、apache

环境:wampserver2.5

1.修改host文件

C:\Windows\System32\drivers\etc\host

底部追加

127.0.0.1       test.com

2.修改apache配置文件

F:\wamp\bin\apache\apache2.4.9\conf\httpd.conf

前面#号去掉,打开vhost模块

LoadModule vhost_alias_module modules/mod_vhost_alias.so

去掉#,加载虚拟配置文件,并编辑

Include conf/extra/httpd-vhosts.conf

这文件清空吧。一堆注释没什么用

#让localhost可以访问

<VirtualHost *:80>

ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "F:/wamp/www"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/local-error.log"
CustomLog "logs/local-access.log" common
</VirtualHost> #测试 <VirtualHost *:80>
DocumentRoot "F:/wamp/www/test.com"
ServerName test.com
ErrorLog "logs/test-error.log"
CustomLog "logs/test-access.log" common </VirtualHost> 如果有遇到拒绝访问,那便是要设置目录访问权限了。可以再httpd.conf 中找到根目录修改 <Directory F:/wamp/www/>
AllowOverride All
Require all granted
</Directory>

  

甚至你可以把这段代码放到上面的<virtualhost>标签里面。

重启apache。http://test.com 访问ok!

二、nginx

1.host文件

vi /etc/hosts

追加

Include conf/extra/httpd-vhosts.conf

wq保存退出

2.修改nginx配置

vi /etc/nginx/nginx.conf

末端打开加载虚拟配置目录

Include conf/extra/httpd-vhosts.conf

3.添加虚拟配置

vi /etc/nginx/conf.d/test.com.conf

server{

listen 80;

server_name test.com;

index index.html index.php;

root /var/www/html/test.com;

#支持php

location ~ \.php$

{
root /var/www/html/test.com;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PHP_VALUE "open_vasedir=$document_root:/temp;";
include fastcgi_params;
} }

重启nginx服务。

service nginx restart

访问test.com,OK!

补充:如果需要nginx打开错误信息报告。需要配置一下

vi /etc/php.ini

shift+: / display_error = On

因为我开启了php-fpm。所以,还要编辑 php-fpm.conf文件,把php_flag[display_errors]设为on:

vi /etc/php-fpm.conf

有的可能在/etc/php-fpm.d/www.conf

php_flag[display_errors] = on

重启服务器。就能看到报错信息了。

如果还没看到输出错误。查看phpinfo(),display_error是否为0

按理说这样,错误信息是不会输出了,但是当PHP有错误时,会把报错提示显示在页面上。
搜索了下,发现有人说当log_errors开启时,如果error_log的路径不对,会导致报错显示。经查与此无关。
输出phpinfo(),查看到display_errors是On。在页面中指定:ini_set(“DISPLAY_ERRORS”,0),仍然无效!
最后发现php-fpm.conf里有句:

Additional php.ini defines, specific to this pool of workers.

 <value name="php_defines">

 <value name="sendmail_path">/usr/sbin/sendmail -t -i</value>

 <value name="display_errors">0</value>

 </value>

  

原来忘了修改这个地方的配置,display_errors被设置为1了!改成0就好了。这里面也说明了在php_defines里可以额外指定某些php的参数。
直接将这两段注释掉,php-fpm reload后,报错提示不再显示到页面上了。

如果是0,没修改成功,可以在php代码中加上

ini_set('display_error',1);//0 or 1
ini_set('error_reporting',E_ALL);

  

http://www.jbxue.com/article/13758.html

apache与nginx的虚拟域名配置的更多相关文章

  1. apache、nginx的虚拟域名配置和rewrite配置,以及web缓存的几种方式

    web缓存一般用来缓解数据库压力. 通常有几种方法,文件静态化,缓存服务memcached.redis等. 伪静态,一般指在url上貌似访问静态html页的形式,这样有利于搜索引擎访问到网站页面,实际 ...

  2. Linux\Nginx 虚拟域名配置及测试验证

    使用 Nginx 虚拟域名配置,可以不用去购买域名,就可以通过特定的域名访问本地服务器.减少发布前不必要的开支. 配置步骤 1. 编辑 nginx.conf 配置文件 sudo vim /usr/lo ...

  3. Nginx中虚拟主机配置

    一.Nginx中虚拟主机配置 1.基于域名的虚拟主机配置 1.修改宿主机的hosts文件(系统盘/windows/system32/driver/etc/HOSTS) linux : vim /etc ...

  4. apache下虚拟域名配置

    在我们开发中通过虚拟域名来访问一个指定的项目确实很方便,接下来教大家如何通过手动的方式去配置虚拟域名(已apache服务器为例) 一.首页我们得找到host文件.windows下这个文件在c盘中WIN ...

  5. 4.Nginx配置文件Nginx.conf_虚拟主机配置规则

    1.Nginx配置文件及各个配置项含义 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processes 8; #全 ...

  6. 一台nginx服务器多域名配置 (转)

    Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: s ...

  7. Nginx的虚拟主机配置

    虚拟主机技术能够让同一台服务器.同一组Nginx进程上运行多个网站,降低了资金和服务器资源的损耗.Nginx可以配置三种类型的虚拟主机,本文就是主要介绍这三种虚拟主机配置方式. 配置基于IP的虚拟主机 ...

  8. CentOS 7运维管理笔记(6)----Apache 基于 IP 的虚拟主机配置

    Apache 配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置.本篇随笔记录自己基于IP的虚拟主机配置. 如果同一台服务器有多个IP,可以使用基于IP的 ...

  9. 【nginx】一台nginx服务器多域名配置

    Nginx 多域名配置 nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里.一. ...

随机推荐

  1. 快速排序算法 java 实现

    快速排序算法 java 实现 快速排序算法Java实现 白话经典算法系列之六 快速排序 快速搞定 各种排序算法的分析及java实现 算法概念 快速排序是C.R.A.Hoare于1962年提出的一种划分 ...

  2. [转载] 不查资料确定int型整数的最大值和最小值

    原文地址:http://blog.csdn.net/zhanghuoding/article/details/42719213 想法来自于书中的习题. Java的话直接输出 Integer.MAX_V ...

  3. map(callback)

    将一组元素转换成其他数组(不论是否是元素数组) 你可以用这个函数来建立一个列表,不论是值.属性还是CSS样式,或者其他特别形式.这都可以用'$.map()'来方便的建立. 参数 callbackFun ...

  4. Swift2.3 --> Swift3.0 的变化

    Swift3.0语法变化 首先和大家分享一下学习新语法的技巧: 用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Synt ...

  5. nodejs ejs 请求路径和静态资源文件路径

    /XXX 会跳转到  http://域名:端口/XXX ./XXX  会跳转到 当前路径+/XXX XXX(../XXX) 会跳转到 当前路径父级+XXX

  6. 整理单机安装RabbitMQ,留着备用

    一.安装erlang 1.安装erlang依赖: yum install build-essential openssl openssl-devel unixODBC unixODBC-devel m ...

  7. CentOS 6.5 安装HDFS集群(Hadoop-2.7.3)

    安装真实集群,而不是但节点或者伪分布式,以3个节点为例,node1为NameNode和SecondNameNode,node2和node3为DataNode. 1.3台机器的配置必须要一模一样,只需要 ...

  8. Kafka 0.9+Zookeeper3.4.6集群搭建、配置,新Client API的使用要点,高可用性测试,以及各种坑 (转载)

    Kafka 0.9版本对java client的api做出了较大调整,本文主要总结了Kafka 0.9在集群搭建.高可用性.新API方面的相关过程和细节,以及本人在安装调试过程中踩出的各种坑. 关于K ...

  9. Mybatis Generator生成工具配置文件详解

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...

  10. Netty : writeAndFlush的线程安全及并发问题

    使用Netty编程时,我们经常会从用户线程,而不是Netty线程池发起write操作,因为我们不能在netty的事件回调中做大量耗时操作.那么问题来了 – 1, writeAndFlush是线程安全的 ...