【发布时间】:2013-12-15 00:38:43
【问题描述】:
在我的生产环境中包含 TinyMCE js 文件时遇到了一些问题。
问题:
- Evertything 运行良好,但 tinymce.min.js 无法加载。当我尝试在浏览器中查看该文件时,它似乎是空白的。我发现该请求出现 500 服务器错误,因此我认为 .htacess 重写可能是原因。
- 我制作的任何其他 js 文件都可以正常工作,并且可以通过它的 url 在浏览器中读取。
- 如果我更改 tinymce.min.js 的内容,该文件会被读取并且工作正常。
CakePHP 安装:
它位于共享主机中,我已执行以下操作以使其正常工作:
-
app、plugin、vendor 和 lib 目录是 public_html 目录的上一级。 (在我的情况下是 /home2/username/)
-
来自 webroot 的内容被复制到 /home2/username/public_html
-
最后我修改了 Cake 的常量 ROOT 以匹配从 webroot 复制的 index.php 文件中的 /home2/username/。
正如我之前所说,我唯一能想到的就是当 tinymce.min.js 开始包含其他 js 文件时 htaccess 会做一些事情,但我不是 apache 或重写规则方面的专家。其他一切都完美无缺。
观看次数:
javascript 文件包含在使用 html 帮助器的文章的 admin_add 和 admin_edit 视图中,它们不在 head html 标记之间。
<?php echo $this->Html->script('tinymce/tinymce.min'); ?>
<?php echo $this->Html->script('tinymce/init'); ?>
例如,我的 admin_add.ctp 如下所示:
<?php echo $this->Html->script('tinymce/tinymce.min'); ?>
<?php echo $this->Html->script('tinymce/init'); ?>
<div class="articulo prev">
<?php echo $this->Form->create('Articulo'); ?>
<fieldset>
<legend><?php echo __('Crear Articulo'); ?></legend>
<?php
echo $this->Form->input('titulo');
echo $this->Form->input('contenido');
echo $this->Form->input('categoria_id', array('type' => 'select', 'options' => $categorias, 'label' => 'Categoria', 'empty' => 'Seleccionar'));
echo $this->Form->input('fecha');
echo $this->Form->input('usuario_id');
?>
</fieldset>
<?php echo $this->Form->end(__('Submit')); ?>
</div>
<div class="links_interes">
<title><?php echo __('Acciones'); ?></title>
<ul>
<li><?php echo $this->Html->link(__('Listar Articulos'), array('action' => 'index')); ?></li>
<li><?php echo $this->Html->link(__('Listar Usuarios'), array('controller' => 'usuarios', 'action' => 'index')); ?> </li>
<li><?php echo $this->Html->link(__('Crear Usuario'), array('controller' => 'usuarios', 'action' => 'add')); ?> </li>
</ul>
</div>
【问题讨论】:
-
你能展示你的布局吗?我有兴趣看看你如何调用 JS 文件
-
已编辑帖子以添加其中一个视图的实际代码,谢谢。