【问题标题】:Symfony 1.4: Error Clearing Cache in Maintenance ModeSymfony 1.4:在维护模式下清除缓存时出错
【发布时间】:2021-11-12 21:18:27
【问题描述】:

我正在使用旧的 Symfony 1.4 站点,此时升级不是一个选项。

为了部署站点,我创建了一个任务,首先将站点置于维护模式,执行一些其他工作(下拉代码等),然后清除缓存,然后再尝试将站点恢复原状在线(退出维护模式)。

但是,我发现当我尝试在维护模式下清除缓存时,它失败了,我反而在命令行上重新获得了网页。有解决此问题的建议吗?

[geoff.maddock@corp09 smc]$ sudo ./symfony project:disable prod koba frontend2 api api2
[sudo] password for geoff.maddock:
>> file+     /var/www/smc/data/koba_prod.lck
>> enable    koba [prod] has been DISABLED
>> file+     /var/www/smc/data/frontend2_prod.lck
>> enable    frontend2 [prod] has been DISABLED
>> file+     /var/www/smc/data/api_prod.lck
>> enable    api [prod] has been DISABLED
>> file+     /var/www/smc/data/api2_prod.lck
>> enable    api2 [prod] has been DISABLED


[geoff.maddock@corp09 smc]$ sudo ./symfony cc
>> cache     Clearing cache type "all" for "backend" app and "prod" env
>> file+     /var/www/smc/data/backend_prod-cli.lck
>> chmod 777 /var/www/smc/data/backend_prod-cli.lck
>> file-     /var/www/smc/cache/backend/prod/config/modules_sfGuardAuth_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_core_compile.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_circuit_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_virtualCenter_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_home_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_factories.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_databases.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_circuit_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_routing.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_virtualCenter_config_view.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_app.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_change_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_virtualCenter_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_customer_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_home_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_change_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_settings.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_customer_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_circuit_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_ticket_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_sfGuardAuth_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_customer_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_change_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_ticket_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_virtualCenter_config_filters.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_sfGuardAuth_config_view.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_home_config_security.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_config_handlers.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_ticket_config_module.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/config_autoload.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_home_config_view.yml.php
>> file-     /var/www/smc/cache/backend/prod/config/modules_sfGuardAuth_config_filters.yml.php
>> file-     /var/www/smc/data/backend_prod-cli.lck
>> cache     Clearing cache type "all" for "frontend2" app and "prod" env
<!DOCTYPE html>
<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="title" content="Expedient Support Management Console" />
<meta name="description" content="Expedient Support Management Console" />
<meta name="keywords" content="Expedient Support Management Console" />
<meta name="language" content="en" />
<meta name="robots" content="noindex, nofollow" />
<title>Temporarily Down for Maintenance</title>

<style type="text/css"><!--
* {
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial,Sans-Serif;
  font-size: 0.75em;
  line-height: 1.5em;
  color: #444;
  background-color: #fff;
  margin: 20px;
  padding: 20px;
}

div.wrapper {
  position: relative;
  display: block;
  width: 500px;
  margin: 0 auto;
}

div.content {
  font-size: 1.3em;
  line-height: 1.4em;
  padding: 20px;
  background: #f8f8f8;
}

h1 {
  color: #333;
  font-size: 50px;
  line-height: 1.4em;
  font-weight: bold;
  margin: 20px 0;
}

p {
  margin: 10px 0;
}

strong {
  font-weight: bold;
}

--></style>

</head>
<body>

<div class="wrapper">
  <h1>Temporarily Down for Maintenance</h1>
  <div class="content">
    <p>
      We are performing scheduled maintenance.  We should be back shortly.
    </p>
    <p>
      If you need immediate assistance, please contact our support center at 1-888-227-9400.
    </p>
    <p>
      <a href="javascript:window.location.reload()">Try again: Reload Page</a>
    </p>
  </div>
</div>

</body>

【问题讨论】:

  • 根据您的网络服务设置方式,缓存目录和文件可能由与您运行 cli 实用程序的用户不同的用户拥有。这通常是有效的网络服务器用户。请参阅@Greg 评论。这本质上是一个棘手的问题,所以我使用部署工具解决了这个问题,以 root 身份删除目录。
  • 执行缓存清除时无需将网站置于维护模式 (./symfony project:disable)。
  • 我将其置于维护模式以将其从运行状况检查中删除,因此我的负载均衡器无法为站点提供服务(三个副本之一)。我可以尝试在此之外清除缓存,但我过去曾遇到过这样的问题。

标签: php symfony symfony-1.4


【解决方案1】:

我不是 symfony 1.4 专家/爱好者,但您是否尝试过从缓存目录中删除所有内容?你可以这样做:

rm -r /path/to/the/dir/with/cache/* 

(记住 * 在路径末尾删除目录 inside 缓存目录)

【讨论】:

    猜你喜欢
    • 2017-12-21
    • 2016-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-22
    • 1970-01-01
    • 2013-03-26
    相关资源
    最近更新 更多