13
2025
03
21:35:06

宝塔面板安装Nginx和PHP并配置pathinfo

目录
1 简介
2 安装宝塔面板
3 通过宝塔安装PHP7.4
4 PHP开启pathinfo
5 配置nginx
6 省略index.php
7 指定目录使用php5版本


简介

现在几乎所有的PHP框架都需要使用pathinfo来读取url信息。

安装宝塔面板

通过宝塔安装PHP7.4

PHP开启pathinfo

cgi.fix_pathinfo = 1

也可直接在面板中开启:

5007defed32cfbd90058f6dd82cf8ee4_cd10740ba9b67c04c250ac222fd4ce61.png

配置nginx

打开D:\BtSoft\nginx\conf\php\74.conf,在try_files $uri =404;前添加#注释掉,否则访问时会出现404
修改后的74.conf文件内容如下:

  1. location ~ \.php(.*)$ {

  2.    #try_files $uri =404;

  3.    fastcgi_pass   127.0.0.1:20074;

  4.    fastcgi_index  index.php;

  5.    fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;

  6.    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

  7.    fastcgi_param  PATH_INFO  $fastcgi_path_info;

  8.    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

  9.    include        fastcgi_params;

  10. }

配置后已支持使用/index.php/foo/bar来访问了。

省略index.php

为了让URL更好看,可以省略URL路径中的index.php
添加伪静态规则:

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

797c75563410285af806e686fa1d2bd1_c737c19980a9bc4713fe3cf2a1538191.png

配置后已支持使用/foo/bar访问。

指定目录使用php5版本

有些时候我们希望在指定的目录中使用PHP5的版本来访问。先通过宝塔安装PHP5.6版本。打开D:\BtSoft\nginx\conf\php\74.conf,在文件顶部加入:

  1. location ~ /hello(.*)$ {

  2.    fastcgi_pass   127.0.0.1:20056;

  3.    fastcgi_index  index.php;

  4.    fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;

  5.    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

  6.    fastcgi_param  PATH_INFO  $fastcgi_path_info;

  7.    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

  8.    include        fastcgi_params;

  9. }

这样访问/hello/目录下的文件将使用php5.6版本




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://sg.hqyman.cn/post/9585.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: