smarty 迁移网站无法正常工作。错误 500
smarty migration website doesn't work. Error 500
我必须将网站从托管商转移到另一个托管商 (MelbourneIT)。
所以我像往常一样使用我最喜欢的 FileZilla,只需将 html 网站(没有数据库)复制到另一个 url。
所以这个适用于第一页 (http://www.lmhceramics.com/),因为它是一个 html,但我的所有其他页面都不起作用!
我检查了我网站的文件夹,发现这个文件夹与显然是第三方应用程序的 "Smarty" 一起使用。
我尝试了 5 个小时不同的事情:创建一个 .htaccess 来启动 index.php 而不是 index.html,更改我的 site_globals.php 上的配置,但它没有用。似乎只有第一页:index.html 正在加载。
如果有人能提供帮助,我可以提供 ftp 的访问权限,因为它是我公司的一个网站!
谢谢大家。
干杯
信息太少,很难知道。在 php 中启用错误报告或只查看服务器中的 php 错误日志。错误 500 的一个可能原因可能是某些关键文件夹没有 CHMOD 写入权限;例如在smarty中,templates_c必须是可写的
最初我测试了 PHP 是否正常工作,然后当我确定我查看错误日志时。最重要的问题是由于路径损坏而找不到所需的库,并且 PHP 的 display_errors 设置被禁用,因此导致白屏。
网站主页现已正常运行。
在 site_globals.php 中,有两条路径以正斜杠开头。这导致代码在服务器的根目录中查找特定的文件文件夹(Smarty 库和 Smarty 模板),这可能在旧服务器上有效,但在新的共享主机环境中无效。新代码斜体:
define( "SMARTYPATH", _$_SERVER['DOCUMENT_ROOT'] ._ "/deldridge_smarty/" );
define( "TEMPLATEPATH", _$_SERVER['DOCUMENT_ROOT'] ._ '/smarty/' );
修复后,可以加载代码库和模板,并继续加载配置文件的其余部分。然后它死于:
$db_interface = new DBInterface;
$db_interface->connect( '172.20.254.1' , 'ampnet', 'cable05' );
这是尝试连接到数据库。我还没有调查数据库的用途(这需要深入查看 PHP 文件),但我假设它是登录系统或类似系统。注释掉这两行后,站点中几乎所有的页面都可以运行,我现在已经这样做了,以便大部分内容再次可用。下方还有另一个对数据库连接详细信息的引用,但它们已被注释掉。
另一个特别感兴趣的领域是:
// different dir structure on secure domain, make ammends
// ensure trailing slash if directory present
define( "SECURE_DIR", 'buildersbollards/' );
if ( $_SERVER['DOCUMENT_ROOT'] == '/home/deldridge/secure.4mation.com.au' )
{
$site_path = '/' . SECURE_DIR;
}
希望有帮助!
我必须将网站从托管商转移到另一个托管商 (MelbourneIT)。
所以我像往常一样使用我最喜欢的 FileZilla,只需将 html 网站(没有数据库)复制到另一个 url。 所以这个适用于第一页 (http://www.lmhceramics.com/),因为它是一个 html,但我的所有其他页面都不起作用!
我检查了我网站的文件夹,发现这个文件夹与显然是第三方应用程序的 "Smarty" 一起使用。
我尝试了 5 个小时不同的事情:创建一个 .htaccess 来启动 index.php 而不是 index.html,更改我的 site_globals.php 上的配置,但它没有用。似乎只有第一页:index.html 正在加载。
如果有人能提供帮助,我可以提供 ftp 的访问权限,因为它是我公司的一个网站!
谢谢大家。
干杯
信息太少,很难知道。在 php 中启用错误报告或只查看服务器中的 php 错误日志。错误 500 的一个可能原因可能是某些关键文件夹没有 CHMOD 写入权限;例如在smarty中,templates_c必须是可写的
最初我测试了 PHP 是否正常工作,然后当我确定我查看错误日志时。最重要的问题是由于路径损坏而找不到所需的库,并且 PHP 的 display_errors 设置被禁用,因此导致白屏。
网站主页现已正常运行。
在 site_globals.php 中,有两条路径以正斜杠开头。这导致代码在服务器的根目录中查找特定的文件文件夹(Smarty 库和 Smarty 模板),这可能在旧服务器上有效,但在新的共享主机环境中无效。新代码斜体:
define( "SMARTYPATH", _$_SERVER['DOCUMENT_ROOT'] ._ "/deldridge_smarty/" );
define( "TEMPLATEPATH", _$_SERVER['DOCUMENT_ROOT'] ._ '/smarty/' );
修复后,可以加载代码库和模板,并继续加载配置文件的其余部分。然后它死于:
$db_interface = new DBInterface;
$db_interface->connect( '172.20.254.1' , 'ampnet', 'cable05' );
这是尝试连接到数据库。我还没有调查数据库的用途(这需要深入查看 PHP 文件),但我假设它是登录系统或类似系统。注释掉这两行后,站点中几乎所有的页面都可以运行,我现在已经这样做了,以便大部分内容再次可用。下方还有另一个对数据库连接详细信息的引用,但它们已被注释掉。
另一个特别感兴趣的领域是:
// different dir structure on secure domain, make ammends
// ensure trailing slash if directory present
define( "SECURE_DIR", 'buildersbollards/' );
if ( $_SERVER['DOCUMENT_ROOT'] == '/home/deldridge/secure.4mation.com.au' )
{
$site_path = '/' . SECURE_DIR;
}
希望有帮助!