apache+nginx虚拟主机总配置文件

#server定义一个虚拟主机

server

{

listen 80;

#网站的域名,可以有多个

server_namewww.123.com www.abc.com;

#301域名重定向

if ($host != ‘www.123.com‘)

{

rewrite ^/(.*)$ http://www.123.com/$1 permanent;

}

index index.htmlindex.htm index.php;

#网站根目录

root /data/www;

#访问日志存放路径,aming为日志的格式,自己定义,在nginx配置文件

access_log/tmp/access.log aming;

#访问控制,对于外部控制,越精确越优先匹配

#deny 127.0.0.1;

#插入一个文件

#include deny.sh;

#用户认证管理后台

location ~.*admin\.php$ {

#访问控制

#allow 127.0.0.1;

#deny all;

#用户认证是通过apache的htpasswd工具

#auth_basic "tingshi";

#auth_basic_user_file /usr/local/nginx/conf/.htpasswd;

#nginx和php-fpm通信的方式,解析php脚本

include fastcgi_params;

fastcgi_pass unix:/tmp/php-fcgi.sock;

fastcgi_index index.php;

#解析php的根目录

fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|rar|zip|bz2)$

{

#gif|jpg|png等静态文件过期时间

expires      30d;

#不记录gif|jpg|png等格式访问日志

access_log off;

#图片,音乐等防盗链

valid_referers none blocked*.123.com *.abc.com;

if ($invalid_referer)

{

return 403;

}

}

location ~ .*\.(js|css)

{

#js|css静态文件过期时间

expires      12h;

#不记录js|css等格式访问日志

access_log off;

}

location ~\.php$ {

#nginx和php-fpm通信的方式,解析php脚本

include fastcgi_params;

fastcgi_pass unix:/tmp/php-fcgi.sock;

#fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

#解析php的根目录

fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;

}

#禁止指定的user_agent(搜索引擎)

#if ($http_user_agent  ~*‘curl|baidu|youdao‘)

#    {

#        return 403;

#    }

}

#简单虚拟主机

server

{

listen 80;

server_name www.woo.com;

index index.html index.htm index.php;

root /data/wordpress;

location ~ \.php$ {

include fastcgi_params;

fastcgi_pass unix:/tmp/php-fcgi.sock;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /data/wordpress$fastcgi_script_name;

}

}

#nginx扩展

Nginx禁止某个目录解析php

location ~ .*abc/.*\.php?$

{

deny all;

}

Nginx禁止访问.txt文件

location ~* \.(txt|doc)$ {

if (-f $request_filename) {

root/home/domain/public_html/test;

break;

}

}-

时间: 2024-11-06 07:16:18

apache+nginx虚拟主机总配置文件的相关文章

Apache与Nginx虚拟主机设置(多域名和多端口的区别)

为了方便管理虚拟主机,应该尽量少修改主配置文件http.conf或者nginx.conf,大部分修改变更都在虚拟主机片配置文件httpd- vhost.conf或者vhost.conf中完成,这样有利于调试,降低风险.即便把虚拟主机配置文件修改得一团糟,只要把主配置文件中包含虚拟主机 配置文件的一行注释掉即可. Apache(多域名): 第一步首先要使扩展文件httpd/conf.d/vhosts.conf生效: 1. 打开 apache2/conf/httpd.conf 文件 2. 找到 #

nginx虚拟主机概念和类型介绍

nginx虚拟主机配置实战 1,虚拟主机概念和类型介绍 所谓虚拟主机,在web服务里就是一个独立的网站站点,这个站点对应独立的域名(也可能是IP或端口),具有独立的程序及资源目录,可以独立地对外提供服务供用户访问. 这个这个独立的站点在配置里是由一定格式的标签段标记,对于apache软件来说,一个虚拟主机的标签段通畅被包含在<VirtualHost></VirtualHost>内,而nginx软件则使用一个server{}标签来标示一个虚拟主机,一个web服务里可以有多个虚拟主机主

windows 下nginx 虚拟主机搭建

需要在 nginx.conf里面引入刚才配置的那个文件 第一步 加东西 http的节点里面加上 一定要注意的是:必须以  ;  结尾 include D:/phpen/nginx-1.3.6/conf/vhost/www.light.com.conf; 或者 include D:/phpen/nginx-1.3.6/conf/vhost/*.conf; 第二步  写配置文件 下面的 这两种方法我都测试过的哦 可以为每一个单独创建一个文件      这个是便于管理 也可以把所有的都写入同一个文件

php管理nginx虚拟主机shell脚本

使用php作为shell脚本是一件很方便的事情.理所当然,我们可以使用php脚本来管理 nginx虚拟主机,下面是笔者的 脚本 文件供各位参考 代码如下 复制代码 #!/usr/bin/php -q<?php start: fwrite(STDOUT,"===========Vhost Script===========\n");fwrite(STDOUT,"= Choose an operation \n");fwrite(STDOUT,"= 1.

四、配置nginx虚拟主机

1.背景: 虚拟主机:一台web主机配置多个站点,每个站点,希望用不同的域名和站点目录,或者是不同的端口,或者是不同的IP. 假设网站的域名为:25linux.com,网站下面设有 http://www.25linux.com;: http://blog.25linux.com;: http://bbs.25linux.com: 三个站点,这样我们可以在一台nginx主机上配置虚拟主机来实现. 通常虚拟主机分为3种: 基于域名,基于端口,基于IP,以及它们的混合来实现,我这里以基于域名的方式来创

Nginx虚拟主机多server_name的顺序问题

Nginx虚拟主机多server_name的顺序问题  大 | 中 | 小  [ 2008-11-28 11:27 | by 张宴 ] [文章作者:张宴 本文版本:v1.0 最后修改:2008.11.28 转载请注明原文链接:http://blog.zyan.cc/post/382/] 今天在配置Nginx + PHP + MediaWiki中,发现一个问题:MediaWiki所在的Nginx虚拟主机绑定了多个域名,但是不管通过什么域名访问MediaWiki首页,都会被跳转到其中的一个域名上.N

Nginx虚拟主机配置实践之nginx访问同一个地址方法(二)

Nginx虚拟主机配置实践之nginx访问同一个地址方法(二) 一.虚拟主机别名介绍 虚拟主机别名就是为虚拟主机设置除了主域名以外的另一个或多个域名名字,这样就能实现用户访问的多个域名对应于同一个虚拟主机网站的功能.在生产环境中,以www.afeilinux.com域名的虚拟主机为例,为其增加一个别名afeilinux.com时,在该域名出现的网站内容和访问www.afeilinux.com得到的结果是一样的. 二.实施方法 第一种方法:Nginx虚拟主机的别名配置 更改wtf.conf配置文件

配置nginx虚拟主机别名及别名企业场景应用说明

nginx虚拟主机的别名配置 1    虚拟主机别名介绍及配置 所谓虚拟主机别名,就是为了虚拟主机设置除了主域名以外的一个或多个域名名字,这样能实现用户访问的多个域名对应同一个虚拟主机网站的功能. 以www.etiantian.org域名的虚拟主机为例,为其增加一个别名etiantian.org,使得访问 [[email protected] bbs]# curl -I 51cto.com HTTP/1.1 301 Moved Permanently Date: Sun, 20 Aug 2017

在Puppet中用ERB模板来自动配置Nginx虚拟主机

1. 模板文件是在puppet模块下面templates目录中以".erb"结尾的文件 puppet模板主要用于文件,例如各种服务的配置文件,相同的服务,不同的配置就可以考虑使用模板文件,例如Nginx和Apache的虚拟主机配置就可以考虑采用ERB模板,nginx的安装在这里建议用系统内部自带的YUM源来安装或其它第三方YUM源来安装,如果是用Nginx的官方源来安装nginx的话,我们可以查看下/etc/yum.repos.d/nginx.repo文件内容,如下所示: [nginx