有人对这个应用程序进行了docker化吗?
https://github.com/claudehohl/Stikked
我很远了。能够启动并运行一个mySQL容器,并在我的本地站点上启动该站点。但是无论我如何尝试禁用验证码,我都会收到错误消息:
我尝试在docker-php-entrypoint
的{{1}}文件中禁用验证码,然后尝试用stikked.php.dist
运行docker run
命令(我尝试过一次和两次)引号)。
重新创建我的设置的步骤:
从我的docker服务器上
1。启动mysql容器
-e STIKKED_ENABLE_CAPTCHA=false
2.Checkout claudehohl / Stikked git项目
docker run --rm --name stikdb --network=bridge -p 3306:3306 -e MYSQL_DATABASE=stikdb -e MYSQL_USER=stikuser -e MYSQL_PASSWORD=stikpassword -e MYSQL_ROOT_PASSWORD=stikrootpassword --hostname stikdb mysql:5.7
3。构建Stikked容器
git clone https://github.com/claudehohl/Stikked.git
4。使用参数启动容器
docker build -t stikked .
从我的桌面
5。转到http://192.168.0.50:9999/并尝试创建一个新粘贴
答案 0 :(得分:0)
当前就位黑客。
如果有人在这个问题上迷失了方向,并且永远无法正确回答,我会留下这张纸条。
我能够修改几个文件以禁用验证码功能并将其从显示中删除。
/htdocs/application/controllers/Main.php
删除第465-469行(包括469行) array(
'field' => 'captcha',
'label' => 'Captcha',
'rules' => 'callback__valid_captcha',
) ,
**这使得提交验证码不再需要验证码,但表格仍保留在页面上
/htdocs/themes/default/views/defaults/paste_form.php
删除第109-123行<?php if($this->config->item('enable_captcha') && $this->session->userdata('is_human') === null){ ?>
<div class="item_group">
<div class="item item_captcha">
<label for="captcha"><?php echo lang('paste_spam'); ?>
<span class="instruction"><?php echo lang('paste_spam_desc'); ?></span>
</label>
<?php if($use_recaptcha){
echo recaptcha_get_html($recaptcha_publickey, null, stristr(base_url(), 'https'));
} else { ?>
<img class="captcha" src="<?php echo site_url('view/captcha'); ?>?<?php echo date('U', time()); ?>" alt="captcha" width="180" height="40" />
<input value="" type="text" id="captcha" name="captcha" tabindex="2" maxlength="32" />
<?php } ?>
</div>
</div>
<?php } ?>
*这使表格脱离了页面
重建Docker映像并启动容器!
我知道这是一种黑客,无法解决为什么代码没有禁用验证码,但是时间却很糟糕...
答案 1 :(得分:0)
在环境中设置STIKKED_ENABLE_CAPTCHA=
或STIKKED_ENABLE_CAPTCHA=0
。
会发生什么,这些值将以某种方式动态加载并以字符串形式引用到config.php中,从而设置了$config['enable_captcha'] = 'false'
。在PHP中,“ false”被视为true。因此,使用空字符串或0即可解决问题。