lnmp安装与调试,请看

http://www.cnblogs.com/lin3615/p/4376224.html

虚拟主机的配置
编辑nginx配置文件 nginx.conf
此为主配置文件

  1. vim nginx.conf
  2. #user nobody;
  3. # user 主模块指令,指令nginx worker 运行用户和用户组(user xxxuser xxxgroup) ,
  4. # 默认由nobody运行
  5. #定义进程数,一般与cpu核心数一样
  6. worker_processes 1;
  7. #error_log logs/error.log;
  8. #error_log logs/error.log notice;#错误日志级别
  9. #error_log logs/error.log info; #错误日志级别
  10.  
  11. #pid logs/nginx.pid; #pid 指令 指定进程id存储位置
  12.  
  13. #events 指令 指令nginx 工作模式和连接数上限
  14. events {
  15. work-connections 1024;
  16. }
  17.  
  18. #http服务器配置,同时引用外部的配置文件
  19. http {
  20. include mime.types; #包含文件mime.types
  21. default_type application/octect-stream; #默认为二进制流
  22. #日志格式
  23. log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
  24.  
  25. access_log logs/access.log main;
  26. sendfile on; #高效文件传输模式,将tcp_nopush和tcp_nodely设置为on
  27. keepAlive_timeout 65; #客户端连接保持活动的超时时间,超时后关闭连接
  28. # 包含虚拟目录中的文件,如,t.conf, b.conf
  29. include /绝对路径/目录/*.conf;
  30. }

===============================

配置虚拟主机
vim t.conf
即一个 server {} 为一个虚拟主机

  1. server {
  2. # 监听的端口
  3. listen 80;
  4. # 主机名
  5. server_name www.t.com;
  6. #设置网页字符编码
  7. #charset utf-8;
  8. #访问日志路路径
  9. access_log /绝对路径/文件名.log main;
  10. #默认请求
  11. location / {
  12. # 网页文件存放的目录
  13. root /文档目录的绝对路径/文件夹名;
  14. #默认首页文件,顺序从左到右,如果找不到 index.php,则找下一个
  15. index index.php index.html index.htm;
  16. }
  17. #定义页面状态码为 5xx系统的错误页面
  18. error_page 500 502 504 /50x.html;
  19. location = /50x.html {
  20. root /绝对路径/文档目录;
  21. }
  22. #设置能解释php脚本,以下是tcp 模式,
  23. #如果用要到 socket方式,则要另外配置,看最后
  24. #php脚本请求全部转发到 fastcgi处理,使用FastCGI默认配置.
  25. location ~\.php$ {
  26. fastcgi_pass 127.0.0.1:9000;
  27. fastcgi_index index.php;
  28. fastcgi_param SCRIPT_FILENAME /绝对路径/文档文件夹名$fastcgi_script_name;
  29. include fastcgi_params;
  30. }
  31. #禁止访问 .ht.... 文件
  32. location ~\.ht {
  33. deny all;
  34. }
  35.  
  36. }

  

同理可配置另一台虚拟机:
b.conf,以下涉到url重写;
大小写匹配

~ 区分大小写匹配
~* 不区分大小写匹配

!~ 区分大小写不匹配
!~* 不区分大小写不匹配

文件及目录匹配

-f 是否文件存在
!-f 是否文件不存在

-d 是否存在目录
!-d 是否不存在目录

-e 是否存在文件或目录
!-e 是否不存在文件或目录

-x 文件是否可执行
~!-x 文件是否不可执行

flag 标记

last 相当于apache 里面的 [L]标志,表示完成 rewrite
break 终止匹配,不再匹配后面的规则
redirect 返回 302 临时重定向,地址栏会显示跳转后的地址
permanent 返回301永久重定向,地址栏会显示跳转后的地址
##################################

  1. server {
  2. listen 80;
  3. server_name www.b.com;
  4. access_log /绝对路径/文件名.log main;
  5. location / {
  6. root /文档目录的绝对路径/文件夹名;
  7. index index.php index.html index.htm;
  8. #################
  9. #重写 www.a.com/99 -> index.php?a=99
  10. #则 rewrite ^/(\d+)$ index.php?a=$1 last;
  11.  
  12. #重写 www.a.com/action/100 -> index.php?a=action&id=100
  13. #则 rewrite ^/(\w+)\/(\d+)$ index.php?a=$1&id=$2 last;
  14. }
  15.  
  16. error_page 500 502 504 /50x.html;
  17. location = /50x.html {
  18. root /绝对路径/文档目录;
  19. }
  20. location ~\.php$ {
  21. fastcgi_pass 127.0.0.1:9000;
  22. fastcgi_index index.php;
  23. fastcgi_param SCRIPT_FILENAME /绝对路径/文档文件夹名$fastcgi_script_name;
  24. include fastcgi_params;
  25. }
  26.  
  27. location ~\.ht {
  28. deny all;
  29. }
  30.  
  31. }

######################

关于用 unix domain socket 配置方法
1.首先建立/dev/shm/php-cgi.sock文件,
然后将之改所有者改为nobody
(与 nginx的用户一致,默认为 nobody,可用 ps aux查看)

  1. touch /dev/shm/php-cgi.sock
  2. chown nobody:nobody /dev/shm/php-cgi.sock
  3. chmod 0777 /dev/shm/php-cgi.sock

2.编辑上面的 nginx.conf中

  1. #fastcgi_pass 127.0.0.1:9000;
  2. fastcgi_pass unix:/dev/shm/php-cgi.sock;

3.修改 php-fpm.conf 配置(可以搜索)

  1. ;listen = 127.0.0.1:9000
  2. listen = /dev/shm/php-cgi.sock

重启 php-fpm和nignx即可

lnmp 虚拟主机配置及重写的更多相关文章

  1. Ubuntu Server 14.04 & Apache2.4 虚拟主机、模块重写、隐藏入口文件配置

    环境: Ubuntu Server 14.04 , Apache2.4 一.Apache2.4 虚拟主机配置 01. 新建一份配置文件 在apache2.4中,虚拟主机的目录是通过/etc/apach ...

  2. Nginx高性能服务器安装、配置、运维 (5) —— Nginx虚拟主机配置

    六.Nginx虚拟主机配置 建立基于域名的虚拟主机: (1)建立基于域名的虚拟主机配置文件(以abc.com为例): (2)更改虚拟主机配置文件: 更改配置如下(更改部分即可): server { l ...

  3. 转:LNMP虚拟主机PHP沙盒绕过/命令执行(php exec命令被禁之后)

    LNMP虚拟主机PHP沙盒绕过/命令执行 lnmp更新1.2版本,很多东西都升级了,很棒.不过还是发现一个BUG. LNMP是一款linux下nginx.php.mysql一键安装包. 下载:http ...

  4. Nginx中虚拟主机配置

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

  5. phpStudy 的Apache虚拟主机配置

    放弃了wamp,朋友介绍了phpstudy,不错的一款软件,关键是能自由切换php版本.相关的阿帕奇虚拟主机配置参考:http://www.th7.cn/system/win/201506/10846 ...

  6. Apache虚拟主机配置

    在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录.Apache虚拟主机配置有3中方法:基于IP配置.基于域名配置和基于端口配置,这里介 ...

  7. lamp centos虚拟主机配置

    1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80      #设置监听不同的虚拟主机需要使用的端口 Liste ...

  8. nginx虚拟主机配置

    nginx虚拟主机配置   虚拟主机的概念虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录nginx虚拟主机的配置nginx的 ...

  9. Apache虚拟主机配置(多个域名访问多个目录)

    Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...

随机推荐

  1. BZOJ 1199: [HNOI2005]汤姆的游戏 计算几何暴力

    1199: [HNOI2005]汤姆的游戏 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/p ...

  2. android学习日记0--开发需要掌握的技能

    一.开发android,我们需要哪些技能基础 1.Java基础知识 2.Linux基础知识 3.数据库基础知识 4.网络协议 5.Android基础知识 6.服务器端开发知识 1.Java基础知识 很 ...

  3. String使用equals方法和==分别比较的是什么?

    equals方法和==的区别   首先大家知道,String既可以作为一个对象来使用,又可以作为一个基本类型来使用.这里指的作为一个基本类型来使用只是指使用方法上的,比如String s = &quo ...

  4. Android_GestureDetector

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  5. String 、InputStream、Reader 的转换

    1.String –> InputStream InputStrem is = new ByteArrayInputStream(str.getBytes());orByteArrayInput ...

  6. 各I/O模型 对应Web服务应用模型(select,poll,epoll,kevent,"/dev/poll")

    一.利用select多路复用I/O的Web服务应用模型  /* 可读.可写.异常三种文件描述符集的申明和初始化.*/ fd_set readfds, writefds, exceptionfds; F ...

  7. 【运维】使用FC命令辅助查杀DLL木马

    使用FC命令辅助查杀DLL木马 在windows系统中,system32目录下是木马隐身的好地方,查找起来非常困难,许多木马都削尖了脑袋往那里钻,DLL木马也不例外.针对这一点用户可以在安装好系统和必 ...

  8. 详细讲解Android对自己的应用代码进行混淆加密防止反编译

    1.查看项目中有没有proguard.cfg. 2.如果没有那就看看这个文件中写的什么吧,看完后将他复制到你的项目中. -optimizationpasses 5 -dontusemixedcasec ...

  9. Android的几种alert对话框

    @Override public void onClick(View v) { switch (v.getId()) { case R.id.d1: AlertDialog.Builder build ...

  10. Unity3D 之连按移动加速

    上代码: 效果是连续按W后,加速移动 为物体添加个拖拽效果,方便看运动轨迹. 将下面的脚本绑定到移动的物体上. 不过这里有一点很重要的需要去注意就是该方法不能放在 void FixedUpdate() ...