简介
现在几乎所有的PHP框架都需要使用pathinfo来读取url信息。
安装宝塔面板
略
通过宝塔安装PHP7.4
略
PHP开启pathinfo
cgi.fix_pathinfo = 1
也可直接在面板中开启:
配置后已支持使用/index.php/foo/bar
来访问了。
省略index.php
为了让URL更好看,可以省略URL路径中的index.php
打开目录下的.htaccss
文件,添加如下伪静态规则:
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L,E=PATH_INFO:/$1]
</IfModule>
修改后,$_SERVER中将包含REDIRECT_PATH_INFO
变量,可以使用该变量来替代$_SERVER['PATH_INFO']
例如可以在入口文件第一行加入:
if($_SERVER['REDIRECT_PATH_INFO']) $_SERVER['PATH_INFO'] = $_SERVER['REDIRECT_PATH_INFO'];
配置后已支持使用/foo/bar
访问。
指定目录使用php5版本
有些时候我们希望在指定的目录中使用PHP5的版本来访问。先通过宝塔安装PHP5.6版本。打开D:\BtSoft\apache\conf\php\74.conf
,复制其中的内容,然后在指定目录中添加.htaccss
文件:,内容如下:
<Files ~ "\.php$">
Options FollowSymLinks ExecCGI
AddHandler fcgid-script .php
FcgidWrapper "D:/BtSoft/php/56/php-cgi.exe" .php
AcceptPathInfo On
</Files>
这样访问该目录下的文件将使用php5.6版本