location ^~ /bbs.txt { | location ^~ /bbs{
alias /var/www/html/1.txt; | alias /var/www/html/1.txt;
} | }
location = /bbs.txt { | location = /bbs{
alias /var/www/html/2.txt; | alias /var/www/html/2.txt;
} | }
结果会优先返回优先级高的匹配URL | 结果会优先返回优先级高的匹配URL
即2.txt的页面内容 | 即2.txt的页面内容
alias 定义Nginx中别名功能,只能用在location中
tips:
root既可以写在server中,也可以写在location,当同时存在时,内层会替换外层。例如
root path1;
location / {
root path2;
}
location ~ \.php$ {
}
第一个location生效的是path2,第二个location生效的是path1.
root和alias的区别:
root指定的是根目录,alias指定的是当前目录,
location /html {
root /data/web/;
}
# 如果URL请求的是/html/index.html,则nginx会在/data/web/html/目录查找index.html文件
location /html {
alias /data/web/;
}
# 如果URL请求的是/html/index.html,则nginx会在/data/web/目录下查找index.html文件
location ~ ^/download/(.*)$ {
alias /data/web/$1;
}
# 如果URL请求的是/download/nginx.tar.gz,则nginx会在/data/web/目录下查找nginx.tar.gz文件
nginx中配置文件中的正则表达式依赖于pcre库,这也是安装nginx之前为什么必须先安装pcre的原因。
http_geoip_module模块可以处理来自不同地区的访问
include /usr/share/nginx/modules/mod-http-geoip.conf
Nginx -V # 查看Nginx编译过程中的参数
--sbin-path 定义开启Nginx的主进程的命令路径
--modules-path 定义Nginx的模块的存储路径
--conf-path 定义Nginx配置文件的路径
--error-log-path 定义错误日志的路径
--http-client-body-temp-path 客户端主体请求的临时文件的路径
--http-proxy-temp-pathNginx 代理(负载均衡)的临时文件的路径
--http-fastcgi-temp-path fastcgi的临时文件的路径
--with-file-aio 文件的异步IO
4.LNMP架构
现在大多数的电子商务网站都是基于LNMP(Linux+Nginx+MySQL+PHP)架构设计的。LNMP的架构的简单的工作原理如下,