lnmp 虚拟主机配置及重写
lnmp安装与调试,请看
http://www.cnblogs.com/lin3615/p/4376224.html
虚拟主机的配置
编辑nginx配置文件 nginx.conf
此为主配置文件
vim nginx.conf
#user nobody;
# user 主模块指令,指令nginx worker 运行用户和用户组(user xxxuser xxxgroup) ,
# 默认由nobody运行
#定义进程数,一般与cpu核心数一样
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;#错误日志级别
#error_log logs/error.log info; #错误日志级别 #pid logs/nginx.pid; #pid 指令 指定进程id存储位置 #events 指令 指令nginx 工作模式和连接数上限
events {
work-connections 1024;
} #http服务器配置,同时引用外部的配置文件
http {
include mime.types; #包含文件mime.types
default_type application/octect-stream; #默认为二进制流
#日志格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main;
sendfile on; #高效文件传输模式,将tcp_nopush和tcp_nodely设置为on
keepAlive_timeout 65; #客户端连接保持活动的超时时间,超时后关闭连接
# 包含虚拟目录中的文件,如,t.conf, b.conf
include /绝对路径/目录/*.conf;
}
===============================
配置虚拟主机
vim t.conf
即一个 server {} 为一个虚拟主机
server {
# 监听的端口
listen 80;
# 主机名
server_name www.t.com;
#设置网页字符编码
#charset utf-8;
#访问日志路路径
access_log /绝对路径/文件名.log main;
#默认请求
location / {
# 网页文件存放的目录
root /文档目录的绝对路径/文件夹名;
#默认首页文件,顺序从左到右,如果找不到 index.php,则找下一个
index index.php index.html index.htm;
}
#定义页面状态码为 5xx系统的错误页面
error_page 500 502 504 /50x.html;
location = /50x.html {
root /绝对路径/文档目录;
}
#设置能解释php脚本,以下是tcp 模式,
#如果用要到 socket方式,则要另外配置,看最后
#php脚本请求全部转发到 fastcgi处理,使用FastCGI默认配置.
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /绝对路径/文档文件夹名$fastcgi_script_name;
include fastcgi_params;
}
#禁止访问 .ht.... 文件
location ~\.ht {
deny all;
}
}
同理可配置另一台虚拟机:
b.conf,以下涉到url重写;
大小写匹配
~ 区分大小写匹配
~* 不区分大小写匹配
!~ 区分大小写不匹配
!~* 不区分大小写不匹配
文件及目录匹配
-f 是否文件存在
!-f 是否文件不存在
-d 是否存在目录
!-d 是否不存在目录
-e 是否存在文件或目录
!-e 是否不存在文件或目录
-x 文件是否可执行
~!-x 文件是否不可执行
flag 标记
last 相当于apache 里面的 [L]标志,表示完成 rewrite
break 终止匹配,不再匹配后面的规则
redirect 返回 302 临时重定向,地址栏会显示跳转后的地址
permanent 返回301永久重定向,地址栏会显示跳转后的地址
##################################
server {
listen 80;
server_name www.b.com;
access_log /绝对路径/文件名.log main;
location / {
root /文档目录的绝对路径/文件夹名;
index index.php index.html index.htm;
#################
#重写 www.a.com/99 -> index.php?a=99
#则 rewrite ^/(\d+)$ index.php?a=$1 last;
#重写 www.a.com/action/100 -> index.php?a=action&id=100
#则 rewrite ^/(\w+)\/(\d+)$ index.php?a=$1&id=$2 last;
}
error_page 500 502 504 /50x.html;
location = /50x.html {
root /绝对路径/文档目录;
}
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /绝对路径/文档文件夹名$fastcgi_script_name;
include fastcgi_params;
}
location ~\.ht {
deny all;
}
}
######################
关于用 unix domain socket 配置方法
1.首先建立/dev/shm/php-cgi.sock文件,
然后将之改所有者改为nobody
(与 nginx的用户一致,默认为 nobody,可用 ps aux查看)
touch /dev/shm/php-cgi.sock
chown nobody:nobody /dev/shm/php-cgi.sock
chmod 0777 /dev/shm/php-cgi.sock
2.编辑上面的 nginx.conf中
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/dev/shm/php-cgi.sock;
3.修改 php-fpm.conf 配置(可以搜索)
;listen = 127.0.0.1:9000
listen = /dev/shm/php-cgi.sock
重启 php-fpm和nignx即可
lnmp 虚拟主机配置及重写的更多相关文章
- Ubuntu Server 14.04 & Apache2.4 虚拟主机、模块重写、隐藏入口文件配置
环境: Ubuntu Server 14.04 , Apache2.4 一.Apache2.4 虚拟主机配置 01. 新建一份配置文件 在apache2.4中,虚拟主机的目录是通过/etc/apach ...
- Nginx高性能服务器安装、配置、运维 (5) —— Nginx虚拟主机配置
六.Nginx虚拟主机配置 建立基于域名的虚拟主机: (1)建立基于域名的虚拟主机配置文件(以abc.com为例): (2)更改虚拟主机配置文件: 更改配置如下(更改部分即可): server { l ...
- 转:LNMP虚拟主机PHP沙盒绕过/命令执行(php exec命令被禁之后)
LNMP虚拟主机PHP沙盒绕过/命令执行 lnmp更新1.2版本,很多东西都升级了,很棒.不过还是发现一个BUG. LNMP是一款linux下nginx.php.mysql一键安装包. 下载:http ...
- Nginx中虚拟主机配置
一.Nginx中虚拟主机配置 1.基于域名的虚拟主机配置 1.修改宿主机的hosts文件(系统盘/windows/system32/driver/etc/HOSTS) linux : vim /etc ...
- phpStudy 的Apache虚拟主机配置
放弃了wamp,朋友介绍了phpstudy,不错的一款软件,关键是能自由切换php版本.相关的阿帕奇虚拟主机配置参考:http://www.th7.cn/system/win/201506/10846 ...
- Apache虚拟主机配置
在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录.Apache虚拟主机配置有3中方法:基于IP配置.基于域名配置和基于端口配置,这里介 ...
- lamp centos虚拟主机配置
1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80 #设置监听不同的虚拟主机需要使用的端口 Liste ...
- nginx虚拟主机配置
nginx虚拟主机配置 虚拟主机的概念虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录nginx虚拟主机的配置nginx的 ...
- Apache虚拟主机配置(多个域名访问多个目录)
Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...
随机推荐
- http://www.360doc.com/content/10/1012/09/3722251_60285817.shtml
http://www.360doc.com/content/10/1012/09/3722251_60285817.shtml http://www.docin.com/p-163063250.htm ...
- ZOJ 3829 Known Notation 贪心
Known Notation Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.zju.edu.cn/onlinejudge/showPro ...
- BZOJ 1022 SHOI2008 小约翰的游戏John 博弈论
题目大意:反Nim游戏,即取走最后一个的人输 首先状态1:假设全部的堆都是1,那么堆数为偶先手必胜,否则先手必败 然后状态2:假设有两个堆数量同样且不为1,那么后手拥有控场能力,即: 若先手拿走一堆, ...
- android学习日记02--Activity简介
一.Activity活动 学习Android,第一个都会接触Activity滴,Activity表示一个用户界面,是Android应用程序的入口,可以同时有多个界面,但只会显示栈顶的界面. Activ ...
- .NET下解析Json的方法
.NET下几种常见的解析JSON方法 主要类 命名空间 限制 内建LINQ支持 DataContractJsonSerializer System.Runtime.Serialization.Json ...
- 面试题总结之C/C++/MISC
C C pointer,指向数据结构与指向char的指针有区别吗 它们正做+1运算时产生的位移不同 分配在堆的内存与分配在堆栈的内存有什么不同 分配在堆的内存要手动去释放 C structure,数据 ...
- iOS之事件穿透
前言 小伙伴们在开发中是否遇到过这样的需求呢,一个控件的某个部分被另外一个控件遮挡住,当点击这个重叠部分时,需要响应被遮盖控件的点击事件,就如下图所示 当我们点击区域3时,响应蓝色按钮的点击事件, ...
- Asp.Net 之 缓存机制
asp.net缓存有三种:页面缓存,数据源缓存,数据缓存. 一.页面缓存 原理:页面缓存是最常用的缓存方式,原理是用户第一次访问的时候asp.net服务器把动态生成的页面存到内存里,之后一段时间再有用 ...
- TCP连接的建立与关闭
TCP是主机对主机层的传输控制协议:建立连接要三个握手,断开连接要四次挥手. 位码即TCP标志位,有6种标示:SYN(synchronous建立联机),ACK(acknowledgement 确认), ...
- Java基础知识强化之IO流笔记63:随机访问流RandomAccessFile
1. 随机访问流RandomAccessFile RandomAccessFile类不属于流,是Object类的子类.但它融合了InputStream和OutputStream的功能.支持对随机访问文 ...