首页> 运维> php研究> 正文

phpStudy2018 Nginx404

步履不停
发布: 2019-08-12 17:56:10
原创
7895 人浏览过

phpStudy2018 Nginx404

问题描述

phpStudy2018 使用php7+nginx,前半天还一直没问题,也不知道怎么了,后面加了一个站点配置,就突然出现404问题,查看日志

2019/07/02 19:56:12 [error] 12448#1000: *1 CreateFile() "D:/homestead/code/**/api/public/api/login" failed (3: The system cannot find the path specified), client: 127.0.0.1, server: **-api.local, request: "POST /api/login HTTP/1.1", host: "**-api.local"
登录后复制

1,查询许多关于目录斜杠问题

在Windows系统中,正斜杠 / 表示除法,用来进行整除运算;反斜杠 \ 用来表示目录。
在Unix系统中,/ 表示目录;\ 表示跳脱字符将特殊字符变成一般字符(如enter,$,空格等)。

然后就将vhosts.conf配置文件和nginx.conf的root都改为正斜杠

2,访问配置的虚拟目录时,可以访问到框架的入口文件,但无法访问到虚拟目录对应的模块(启用了项目分组)

集成环境自动生成的vhost.conf文件中缺少两行配置语句句

if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; }
登录后复制

这两句话的意思是指,如果请求的文件不存在,则进行路径的重写

改完以后的vhost.conf文件内容为

server { listen 80; # 网站域名 server_name demo.local ; # 代码根目录 root "D:/homestead/code/demo/api/public"; location / { # 默认请求的文件排序 index index.html index.htm index.php; # 判断请求的文件是否存在 if (!-e $request_filename) { # 如果不存在就进行重定向 rewrite ^/(.*)$ /index.php/$1 last; } #autoindex on; } location ~ \.php(.*)$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; } }
登录后复制

推荐教程:phpStudy极速入门视频教程

以上是phpStudy2018 Nginx404的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!