nginx运行php如何,ThinkPHP项目在Nginx上运行的配置问题

为什么需要配置

当我们在使用Nginx来运行Think PHP写的网站项目,在访问时,可能会出现:Access denied , 如图:

260905ef4ae500f0aa1f244a9fcdcda2.png

发生错误的原因是:Nginx下不支持PATH_INFO

如何解决这个问题

既然Nginx不支持PATH_INFO , 那么我们应该对nginx进行配置,使其支持PATH_INFO (我以CentOS为例)

第一步:

进入 /usr/local/php/etc/php.ini , 将cgi.fix_pathinfo的值设为1,如图:

412dd5e5a939cefd77ef3b5c65281421.png

在进入 /usr/local/nginx/conf/nginx.conf , 添加如下内内容:

location / {

#try_files $uri $uri/ /index.php?$query_string;

if (!-e $request_filename){

rewrite ^/(.*)$ /index.php/$1 last;

}

}

fastcgi_split_path_info ^(.+\.php)(/.+)$;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

添加位置如图所示:

ad032758430aa851480915af90c58fb1.png

第二步:

在CentOS分别运行命令:

service php-fpm restart

service nginx restart

拓展

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值