开发者社区 问答 正文

云服务器 ECS 网站访问出现 No input file specified 有哪些解决方法



问题描述



访问 WEB 站点提示 No input file specified 如何解决。

处理办法




IIS 配置解决方法
  • 方法一:改 PHP.ini 中的 doc_root 行,打开ini文件注释掉此行,然后重启IIS。
  • 方法二:修改 php.ini,找到;cgi.force_redirect = 1去掉前面分号,把后面的 1 改为 0,即:cgi.force_redirect = 0

Apache 配置解决方案
打开 .htaccess 在 RewriteRule 后面的 index.php 教程后面添加一个 “?”
完整代码如下 .htaccessRewriteEngine onRewriteCond $1 !^(index.php|images|robots.txt)RewriteRule ^(.*)$ /index.php?/$1 [L]
总结:
Apache 把 .php 后缀的文件解析为 PHP。可以将任何后缀的文件解析为 PHP,只要在以下语句中加入并用空格分开。这里以添加一个 .phtml 来示例。 AddType application/x-httpd-php .php .phtml
为了将 .phps 教程作为 PHP 的源文件进行语法高亮显示,还可以加上: AddType application/x-httpd-php-source .phps
用通常的过程启动 Apache(必须完全停止 Apache 再重新启动,而不是用 HUP 或者 USR1 信号使 Apache 重新加载)。
Nginx配置解决方案
  1. php.ini(/etc/php5/cgi/php.ini)的配置中这两项:cgi.fix_pathinfo=1  (这个是自己添加的)doc_root=
  2. nginx 配置文件 /etc/nginx/sites-available/default : location ~ \.php$ {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /var/www/nginx-default$fastcgi_script_name;include              fastcgi_params;}
  3. 配置完以上部分,重启一下service nginx restart。


如果问题还未能解决,您可以到阿里云社区进行 免费咨询,或联系云市场商家 寻求帮助

展开
收起
boxti 2017-10-23 10:12:46 2029 分享
分享
版权
举报
阿里云 AI 助理回答

当您访问WEB站点遇到"No input file specified"错误时,可以尝试以下针对不同服务器环境的解决方案:

IIS 解决方案

  1. 修改PHP.ini配置

    • 打开php.ini文件,找到doc_root行并注释掉此行(通常在Windows环境下),然后重启IIS服务。
  2. 调整cgi.force_redirect设置

    • php.ini中找到;cgi.force_redirect = 1,去掉前面的分号,并将值从1改为0,即cgi.force_redirect = 0,之后重启IIS。

Apache 解决方案

  1. 编辑.htaccess文件
    • 打开站点根目录下的.htaccess文件,确保RewriteRule后添加一个“?”以避免路径解析问题。示例代码如下:
      RewriteEngine on
      RewriteCond $1 !^(index.php|images|robots.txt)
      RewriteRule ^(.*)$ /index.php?/$1 [L]
      
    • 若要支持其他后缀作为PHP文件解析,可以在.htaccess或Apache配置文件中加入相应AddType指令,例如:
      AddType application/x-httpd-php .php .phtml
      

Nginx 解决方案

  1. 修改php.ini和Nginx配置
    • /etc/php5/cgi/php.ini中,确认已添加cgi.fix_pathinfo=1
    • 调整Nginx配置文件(如/etc/nginx/sites-available/default)中的PHP处理部分,确保SCRIPT_FILENAME参数正确指向网站根目录。示例如下:
      location ~ \.php$ {
       fastcgi_pass   127.0.0.1:9000;
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME  /var/www/nginx-default$fastcgi_script_name;
       include        fastcgi_params;
      }
      
    • 完成配置后,执行service nginx restart命令重启Nginx服务。

如果以上步骤未能解决问题,请检查Web服务器错误日志以获取更详细的错误信息,并考虑进一步排查权限设置、文件是否存在以及Web服务器与PHP配置的一致性等问题。此外,阿里云社区提供免费咨询,您也可以联系云市场商家寻求专业帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答