我已将所有文件上传到var / www / html中,并且在我的一个php文件中我有这一行:
require_once('libraries/stripe/init.php');
我的文件夹的结构列出了这个:
www
-html/
-libraries
-> Stripe -> init.php
-register.php
我不断收到此错误消息:
警告:require_once(libraries / Stripe / init.php):无法打开流:第116行/var/www/html/register.php中没有此类文件或目录
致命错误:require_once():无法打开所需的库&Stripe / init.php'第116行的/var/www/html/register.php中的(include_path ='。:/ usr / share / php:/ var / www / html /')
我的php.ini文件曾经是这样的
include_path ="。:/ usr / local / php / pear /"
但根据这里的一些答案,我将其改为
的include_path =':在/ usr /共享/ PHP:/无功/网络/ HTML /'
但它没有用!
编辑:在我的库文件夹中,我有一个名为index.php的文件,内容是:
<?php
header("Location: ../"); die();
答案 0 :(得分:4)
我不会让库路径像这样:
require_once(__DIR__ . '/libraries/Stripe/init.php');
这将确保您使用当前运行的脚本的绝对目录路径包含脚本。
未能打开'/var/www/html/libraries/Stripe/init.php'
那么,该文件根本就不存在;如果此文件是由其他工具生成的,例如composer
,需要在新服务器上再次完成(或者理想情况下在每次部署时)。
我认为问题是我的Stripe文件夹在“s”中,但我使用的是资本“S”。反正是不是要区分大小写?
Linux下的文件系统默认区分大小写(甚至不确定是否可以更改),而不是Windows。确保始终如一地使用大写字母。
答案 1 :(得分:2)
这不是你想要的。它说php.ini文件无法找到您指定的文件的路径。这就是为什么你应该使用文件的绝对路径
require_once "path/to/file";