apache与nginx的虚拟域名配置
由于开发需求,项目有时候需要设置虚拟域名进行测试。下面是分别是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的虚拟域名配置的更多相关文章
- apache、nginx的虚拟域名配置和rewrite配置,以及web缓存的几种方式
web缓存一般用来缓解数据库压力. 通常有几种方法,文件静态化,缓存服务memcached.redis等. 伪静态,一般指在url上貌似访问静态html页的形式,这样有利于搜索引擎访问到网站页面,实际 ...
- Linux\Nginx 虚拟域名配置及测试验证
使用 Nginx 虚拟域名配置,可以不用去购买域名,就可以通过特定的域名访问本地服务器.减少发布前不必要的开支. 配置步骤 1. 编辑 nginx.conf 配置文件 sudo vim /usr/lo ...
- Nginx中虚拟主机配置
一.Nginx中虚拟主机配置 1.基于域名的虚拟主机配置 1.修改宿主机的hosts文件(系统盘/windows/system32/driver/etc/HOSTS) linux : vim /etc ...
- apache下虚拟域名配置
在我们开发中通过虚拟域名来访问一个指定的项目确实很方便,接下来教大家如何通过手动的方式去配置虚拟域名(已apache服务器为例) 一.首页我们得找到host文件.windows下这个文件在c盘中WIN ...
- 4.Nginx配置文件Nginx.conf_虚拟主机配置规则
1.Nginx配置文件及各个配置项含义 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processes 8; #全 ...
- 一台nginx服务器多域名配置 (转)
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: s ...
- Nginx的虚拟主机配置
虚拟主机技术能够让同一台服务器.同一组Nginx进程上运行多个网站,降低了资金和服务器资源的损耗.Nginx可以配置三种类型的虚拟主机,本文就是主要介绍这三种虚拟主机配置方式. 配置基于IP的虚拟主机 ...
- CentOS 7运维管理笔记(6)----Apache 基于 IP 的虚拟主机配置
Apache 配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置.本篇随笔记录自己基于IP的虚拟主机配置. 如果同一台服务器有多个IP,可以使用基于IP的 ...
- 【nginx】一台nginx服务器多域名配置
Nginx 多域名配置 nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里.一. ...
随机推荐
- 最简单的推送--uexGetui
个推插件使用指南 配置方法这里不再复述,详情请参见插件接入指引 怎样创建一个最简单的推送? //只需要两个方法 uexGetui.initialize(data); uexGetui.onInitia ...
- GitHub上整理的一些工具
技术站点 Hacker News:非常棒的针对编程的链接聚合网站 Programming reddit:同上 MSDN:微软相关的官方技术集中地,主要是文档类 infoq:企业级应用,关注软件开发领域 ...
- web系统开发为什么用asp.net MVC,为什么不用?
向高手咨询下,现在asp.net MVC很流行,但我好像提不起兴趣.企业级Web应用,使用纯HTML+jquery交互+Http Handler(或WebAPI),不是挺好的吗?有很多优点:1.Ht ...
- 了解FreeRTOS源文件目录结构
参考文献: Understanding the FreeRTOS directory structure. 从官网下载下来的FreeRTOS源文件包,对于每一个已经移植完成的处理器,都有一个与之对应的 ...
- jQuery基本操作
jQuery简介 jQuery是一个兼容多浏览器的javascript库,极大地简化了 JavaScript 编程,核心理念是write less,do more(写得更少,做得更多),对javasc ...
- Editplus配置VC++(2) 与/d1reportSingleClassLayout
前篇文章:Editplus配置VC++(1) 及相关注意事项 VC++有两个隐含编译选项/d1reportSingleClassLayout和/d1reportAllClassLayout /d1 ...
- jquery 设置页面元素不可点击、不可编辑、只读(备忘)
$("input").attr('readonly', true); $("textarea").attr('readonly', true); $(':rad ...
- CentOS直接解压可用的memcached、nginx、keepalived
Centos均基于x86_64版本,下面相关文件编译时使用用户组为www,用户为www 相关命令: groupadd -r www useradd -r -g www -M www memcached ...
- sql-将字符串按指定字符分割插入指定表中
CREATE PROC SPLIT( @STR VARCHAR(MAX), --截取字符串 ), --截取字符 ) --存放表名 ) AS BEGIN ) IF(OBJECT_ID(@TABLE) I ...
- Jquery ajax提交表单几种方法
在jquery中ajax提交表单有post与get方式,在使用get方式时我们可以直接使用ajax 序列化表单$('#表单ID').serialize();就行了,下面我来介绍两个提交表单数据的方法. ...