科技常识:nginx中path模式配置示例

2021-03-24 07:31:42
导读今天小编跟大家讲解下有关科技常识:nginx中path模式配置示例,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关科技常识:nginx

今天小编跟大家讲解下有关科技常识:nginx中path模式配置示例,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关科技常识:nginx中path模式配置示例的相关资料,希望小伙伴会喜欢也能够帮助大家。

nginx服务器默认是不支持pathinfo模式的,即类似index.php/index形式的url会提示404。在这里,需要对nginx配置文件中需要开启pathinfo模式的server予以修改配置,修改nginx.conf文件如下:

复制代码 代码如下:server{server_name blog.com;listen 80;root /home/wwwroot/blog;index index.php index.html index.htm;access_log /data/log/blog.access.log;error_log /data/log/blog.error.log;

location / {index index.php;if (!-e $request_filename){rewrite ^/(.*)$ /index.php/$1 last;break;}}

location ~ \.php {#fastcgi_pass 127.0.0.1:9000;fastcgi_pass unix:/dev/shm/php-cgi.sock;fastcgi_index index.php;#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi.conf;include fcgi_pathinfo.conf;set $real_script_name $fastcgi_script_name;if ($fastcgi_script_name ~"^(.+?\.php)(/.+)$"){set $real_script_name $1;set $path_info $2;}fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;fastcgi_param SCRIPT_NAME $real_script_name;fastcgi_param PATH_INFO $path_info;} location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {expires 30d; }

location ~ .*\.(js|css)?$ { expires 7d; }

error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html{ root /home/wwwroot/; }}

并添加fcgi_pathinfo.conf如下:

复制代码 代码如下:fastcgi_param QUERY_STRING $query_string;fastcgi_param REQUEST_METHOD $request_method;fastcgi_param CONTENT_TYPE $content_type;fastcgi_param CONTENT_LENGTH $content_length;fastcgi_param REQUEST_URI $request_uri;fastcgi_param DOCUMENT_URI $document_uri;fastcgi_param DOCUMENT_ROOT $document_root;fastcgi_param SERVER_PROTOCOL $server_protocol;fastcgi_param HTTPS $https if_not_empty;

fastcgi_param GATEWAY_INTERFACE CGI/1.1;fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

fastcgi_param REMOTE_ADDR $remote_addr;fastcgi_param REMOTE_PORT $remote_port;fastcgi_param SERVER_ADDR $server_addr;fastcgi_param SERVER_PORT $server_port;fastcgi_param SERVER_NAME $server_name;

fastcgi_param REDIRECT_STATUS 200;

重要的就是,~\.php后面不能有$,以便能够匹配所有*.php/*形式的url,并且if与后面的括号之间必须有一个空格。

完毕之后,重启nginx。

来源:爱蒂网

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章