由于开发需求,项目有时候需要设置虚拟域名进行测试。下面是分别是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. 【笔记】jquery js获取浏览器滑动条距离顶部距离的写法

    jq写法 $(window).scroll(function(){ var $top = $(document).scrollTop(); }); /*注:$(window).scroll(funct ...

  2. 使用filter获取http请求的出参以及入参

    首先 我们的目的是做一个拦截器 能够对http请求做profiler,能够记录本次的调用情况,这里说下如何从http请求中获取到出参的问题. 方案一:参照http://blog.csdn.net/wu ...

  3. 技术之余。。。电吉他自弹 魂斗罗 solo

    测试一下 ---恢复内容开始--- ---恢复内容结束---

  4. Python数据结构与算法设计总结篇

    1.Python数据结构篇 数据结构篇主要是阅读[Problem Solving with Python]( http://interactivepython.org/courselib/static ...

  5. Django(三)

    1.Django请求的生命周期         路由系统 -> 视图函数(获取模板+数据-->渲染) -> 字符串返回给用户   2.路由系统         /index/    ...

  6. sys,os,模块-正则表达式

    # *__conding:utf-8__* """"我是注释""" sys,os模块 import sysimport os pr ...

  7. 【转】如何配置android的adb环境变量

    转载地址:http://jingyan.baidu.com/article/17bd8e52f514d985ab2bb800.html 对于android的开发人员来说,首先要做的就是环境变量的配置. ...

  8. Thinkphp框架回顾(三)之怎么实现平常的sql操作数据库

    1.首先简单介绍一下我们的数据库,thinkphp数据库下有一个tp_user表,然后有四个字段....id,username,password,sex 我们今天的任务就是在Thinkphp下将数据调 ...

  9. xcopy /r /y "$(TargetPath)" "$(ProjectDir)"..\CMSAdmin\DLL\

    作用:1.所有都生成这里容易管理 2.tfs获取的时候不会有出问题 3.如果都是引用项目 会存在先后顺序 也会导致生成代码的时候出问题

  10. MBP使用笔记

    1. 链接测试机命令: 登录:ssh ria@000.000.000.000 然后输入密码即可 退出:exit 2. SwitchySharp导入的是bak文件. 3. 使用goagentFQ的使用的 ...