Chinaunix首页 | 论坛 | 博客
  • 博客访问: 583703
  • 博文数量: 111
  • 博客积分: 3478
  • 博客等级: 中校
  • 技术积分: 1327
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-28 22:37
文章分类

全部博文(111)

文章存档

2013年(4)

2012年(57)

2011年(15)

2010年(7)

2009年(28)

分类: LINUX

2012-05-21 17:30:46

nginx中虚拟主机和目录设置相关:
一个server里边代表一个虚拟主机,在虚拟主机里边可以定义主机名,端口,网页目录,首页文件等,但是有几个项比较迷惑:
alias: 这个是别名,就是定义上边的文件或目录的别名
root:则是指定目录某个目录的父目录,如:
locate /hello/ {
root /a/;
}
那么在/a/目录下必须有一个hello目录,否则报错.
root如果不是在location命令里边那么它就是指定一个网站的根目录
$fastcgi_script_name变量的作用

fastcgi_param  SCRIPT_FILENAME  $root_document$fastcgi_script_name;($root_document其实要和虚拟主机里边的root路径保持一致也就是网页文件存放目录保持一致要根据实际情况修改,而$fastcgi_script_name则不必改其为一个内置变量)

或者是直接用下边的方法:

fastcgi_param SCRIPT_NAME $fastcgi_script_name即可

nginx 其他问题:

nginx: [emerg] "关键字" directive is duplicate in nginx.conf:line_number 这个是在nginx.conf文件中出现了重复的设置项,找到重复的项注释掉,保证每项只有一个配置即可,还有另外一种情况如果一个参数在多个文件中设置也会报这个错的,常见的是nginx的配置文件和一些perlcgi配置文件或者是phpcgi的配置文件里边的参数冲突

虚拟主机名,是输入就可以访问到相关目录即可。

关于nginx和其他模块的结合,主要是用来解决解析相关的文件,如果要把符合特定类型的文件给某个程序来解析那么,就可以用类似下边的方法:

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000; (用于解析符合特定条件的文件的程序的目录,在这里是用于解析php文件的程序的端口)
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include fastcgi_params;
}
在nginx.conf文件中 ~ \.pattern,以pattern结尾的文件,也可以用~ .*\.pattern来表示

 

 

 

阅读(36274) | 评论(1) | 转发(1) |
0

上一篇:nginx 支持perl cgi

下一篇:find 命令使用

给主人留下些什么吧!~~

重返人生2012-05-23 11:04:21

恩恩,正在学习这个啊,很有用的~~