配置修改Nginx支援 PATHINFO

2022-05-08 10:36:11 字數 1603 閱讀 5837

thinkphp支 持通過pathinfo和url rewrite的方式來提供友好的url,只需要在配置檔案中設定 'url_model' => 2 即可。在apache下只需要開啟mod_rewrite模組就可以正常訪問了,但是nginx中預設是不支援pathinfo的,所以我們需要修改 nginx.conf檔案。

網上搜了很多方法都不奏效,研究了一天,發現通過以下的配置可以完美支援 'url_model' => 2 的情況了

location /project/ 

}location ~ .+\.php($|/)

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php?if_rewrite=1;

include /apmserv/nginx/conf/fastcgi_params;

fastcgi_param path_info $path_info;

fastcgi_param script_filename $document_root/$script;

fastcgi_param script_name $script;

}

這裡先把project下的請求都**到index.php來處理,亦即thinkphp的單一入口檔案;然後把對php檔案的請求交給fastcgi來處理,並且新增對path_info的支援。

重啟nginx以後,http://localhost/project/index/insert, http://localhost/project/index.php/index/delete 這樣的url都可以正確訪問了。

還有乙個地方需要注意的是,nginx配置檔案裡 if 和後面的括號之間要有乙個空格,不然會報unknown directive錯誤。

最主要的來啦,因為以上的都是我複製的

下面的 是我的 配置新建乙個conf檔案,名稱比如linlook.conf

內容:location ~ .+\.php($|/)

fastcgi_pass 127.0.0.1:9000;

fastcgi_index  index.php?if_rewrite=1;

include /www/wdlinux/nginx-0.8.54/conf/fastcgi_params;

fastcgi_param path_info $path_info;

fastcgi_param script_filename  $document_root/$script;

fastcgi_param script_name $script;

}內容:  

nginx中path模式配置示例

nginx伺服器預設是不支援pathinfo模式的,即類似index.php index形式的url會提示404。在這裡,需要對nginx配置檔案中需要開啟pathinfo模式的server予以修改配置,修改nginx.conf檔案如下 複製 如下 server location php fastc...

配置Nginx支援php

nginx.conf中配置 server error page 404 404.html redirect server error pages to the static page 50x.html error page 500 502 503 504 50x.html location 50x....

配置nginx支援ngx lua waf

個人學習筆記,謝絕 原文 ngx lua waf 是乙個基於 ngx lua 的 開源的web 應用防火牆,使用簡單,高效能和輕量級。1 安裝luajit2.0 luajit是採用c語言寫的lua 的直譯器,這裡推薦使用lujit2.1做lua支援 wget tar xf luajit 2.0.5....