版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/meimeieee/article/details/85622201
No input file specified. phpStudy nginx报错解决方案
排查1:检查这个目录是否存在,路径是否错误
排查2:vhost.conf配置文件
server {
listen 80;
server_name www.gdy.com gdy.com;
root "C:\work-space\phpstorm-pro\test";
location / {
try_files $uri $uri/ /index.php?$args;
index index.html index.htm index.php;
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;
}
}
先科普下:
在Windows系统中,正斜杠 / 表示除法,用来进行整除运算;反斜杠 \ 用来表示目录。
在Unix系统中,/ 表示目录;\ 表示跳脱字符将特殊字符变成一般字符(如enter,$,空格等)。
解决办法:
root "C:\work-space\phpstorm-pro\test"; 中的反斜杠,换成正斜杠即可。因为配置文件会把\t \r \n当作转义字符处理。
所以上面得配置路径其实时错误的,记得直接复制路径后,一定要把这反斜杠改过来!其实我这里坑了半天,感觉很莫名奇妙后面突然发现有些目录时可以,于是就相到这个斜杠的问题!网上百度半天,有说权限问题,什么答案都有没有一个可用的!
这里vhost.conf最好时手动改配置,不要用phpStudy的站点管理,一方面,这个管理工具会重置你手动加的特殊配置信息,另一方并没有对这个路径的反斜杠进行替换!作为一个开发者还是养成修改配置文件的习惯!