【问题标题】:PHP/CDN errors during server migration服务器迁移期间的 PHP/CDN 错误
【发布时间】:2017-05-31 11:48:31
【问题描述】:

我们最近进行了手动内部服务器迁移,当我们迁移客户网站时,我们的一些静态网站的文件夹结构存在问题?

This is an example of a website having issues - 如您所见,它选择 CDN 文件夹:

/CDNcss/bootstrap.min.css 

但最初的 CDN 文件夹实际上是小写的,当然斜线也不见了 - 现在表面上可以通过更改包含的 CDN 文件夹结构并添加斜线来对其进行排序,但对于初始文件设置而言,这显然是一个问题该语句刚刚被提取为 /BaseUrl

现在 /includes 中有一个名为 settings.php 的文件,其中显示了以下代码:

<?php

date_default_timezone_set('Europe/London');
ini_set('display_errors',1);
error_reporting(0);

define("MODULEPATH", $_SERVER['DOCUMENT_ROOT']);
define("CDN", 'http://splintaofficial.co.uk/cdn/');
define("BaseUrl", 'http://splintaofficial.co.uk/');

$DynamicMeta = 1;
$RequestUri = $_SERVER["REQUEST_URI"];
$RequestUrl = explode("/", $RequestUri);
$ScriptName = $_SERVER["SCRIPT_NAME"];

?>

但是这个脚本在我们的旧服务器上运行良好?我们甚至将这个特定客户端网络空间的 PHP 降级回 5.5,以测试它是否与 php7/7.1 有任何关系 - 但似乎不是?任何人都可以就为什么会发生这种情况提供任何建议吗?

请注意,头文件会打印以下内容(以防语法发生更改或其他情况!?我无法想象,因为我们在迁移期间没有更改任何内容......)

<link href="<?=CDN?>css/stylesheet.min.css" rel="stylesheet">

error_log 显示以下错误:

[Mon Jan 16 10:24:30.935391 2017] [autoindex:error] [pid 31974:tid 139637574072064] [client 54.226.66.8:33364] AH01276: Cannot serve directory /var/www/vhosts/splintaofficial.co.uk/httpdocs/cdn/: No matching DirectoryIndex (index.html,index.shtml,index.cfm,index.php,index.htm,index.php) found, and server-generated directory index forbidden by Options directive

还有一个有效的 htaccess,它允许从子域等提供内容,也可以随时查看,如果我需要发布此内容,请告诉我。

【问题讨论】:

  • 确保输出目录具有写权限和当前所有权。 Chmod 777 可以,但不是很安全。

标签: php .htaccess cdn plesk php-5.5


【解决方案1】:

这个错误:

[Mon Jan 16 10:24:30.935391 2017] [autoindex:error] [pid 31974:tid 139637574072064] [client 54.226.66.8:33364] AH01276: Cannot serve directory /var/www/vhosts/splintaofficial.co.uk/httpdocs/cdn/: No matching DirectoryIndex (index.html,index.shtml,index.cfm,index.php,index.htm,index.php) found, and server-generated directory index forbidden by Options directive

表示有传入请求http://splintaofficial.co.uk/httpdocs/cdn/(注意没有文件名)但目录/var/www/vhosts/splintaofficial.co.uk/httpdocs/cdn/中没有任何索引文件

因此错误消息看起来与&lt;link href="&lt;?=CDN?&gt;css/stylesheet.min.css" rel="stylesheet"&gt; 无关,或者此模板未呈现。

【讨论】:

    【解决方案2】:

    好像是代码:css/stylesheet.min.css" rel="stylesheet"> 不行,好像没有显示CDN常量的值。

    您可以尝试通过在您的 php.ini 文件中启用短打开标记并重新启动您的网络服务器来纠正此问题。或者你可以使用而不是

    【讨论】:

      猜你喜欢
      • 2016-05-04
      • 2016-05-22
      • 2017-12-06
      • 2016-07-04
      • 2015-03-02
      • 2017-02-05
      • 2020-12-14
      • 2019-04-06
      相关资源
      最近更新 更多