素材牛VIP会员
Centos7 Lnmp 安装好后 能访问phpinfo没问题,但是访问项目却404,尝试了很多方法都未能解决
 Jo***91  分类:PHP代码  人气:1385  回帖:3  发布于6年前 收藏

1.如题,安装好了环境并配置成功,新建文件,输出phpinfo()也没问题,项目也放在统计目录下,请看:


访问phpinfo没毛病,接着请看:

访问项目就出问题了!开启了调试模式(php.ini里面的display_error开启了,也在index.php里面加了【error_reporting(E_ALL | E_STRICT);
ini_set("display_errors", "On");】这一段) ,接下来看ngin

...]

php的错误日志确实是开启了,但是也没有内容,项目所有文件都是root所属着,777的权限:

接下来请看nginx的配置信息:

没了,大致把我的需求描述完了,大家有什么解决方案吗?

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv3 码奴
ji***ui 软件测试工程师 6年前#1
server {
    listen       80;
    server_name  localhost;


    root /var/www/root;
    index  index.php;

        



    location / { 

        try_files $uri $uri/ /index.php;    
    }
    

    location ~ \.php {
    
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_param PATH_INFO $fastcgi_path_info; 
         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
         include        fastcgi_params;

     }

       
}
Lv5 码农
马***1 技术总监 6年前#2
    安装好lnmp的环境后,上传tp5项目

1、先是遇到一个 : scandir() has been disabled for security 的问题

解决方法:打开php.ini配置文件,找到: disable_functions 把里面的scandir删除即可。

2、然后再次刷新虽然跳转了,但是出现了404

排查了很久,是fastcgi_pass的问题,是因为nginx没有支持pathinfo,lnmp里自带了一个配置文件让php支持pathinfo的,他默认是用了 enable-php.conf 改成 enable-php-pathinfo.conf 这个文件就行了

重启,ok~

Lv1 新人
qq***qq JS工程师 6年前#3

{域名}/index.php/ 改成 {域名}/index.php

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取