새로운 Redmine 보안 및 보안
에서 应用程序更新期间,日志中流现一个包含“您的SQL语法有误;请检查与您的MySQL은 服务器版本以获取正确의 语法使 이용 방법...”라고 말했습니다.
원인
这味着您的数据库已过时,无法处理我们的应用程序发送的请求。它只是无法理解它。
解决 方案
您需要更new您的数据库.
如何更新数据库?
在기술 자료中有详细说明.
您已는 权限不足的 用户下에서 安装或更新了Easy Redmine ,未遵循我们在설명中的强烈建议(至少재过去一次).
- 根据服务器设置使용을 chgrp和chown하지命令更正权限(例如:는 chgrp -R www가 데이터 public_html이)
- 再次运行安装命令간부 레이크 easyproject 번들 : RAILS_ENV = 생산 설치,这将清除缓存(如果以root身份运行,将~하지 않을 것이다성 功)
- 새로운 启动服务器
如果您您Easy는 쉬운 소프트웨어를 사용합니다.쉽게다운로드:
sudo chown -R easy / home / easy / current
(현재 - sudo chown -R easy /srv/easyredmine/public_html)
sudo chgrp -R easy / home / easy / current
(현재 - sudo chgrp -R easy /srv/easyredmine/public_html)
cd / home / easy / current
(현재 - cd /srv/easyredmine/public_html)
간부 레이크 easyproject 번들 : RAILS_ENV = 생산 설치
sudo 서비스 puma@your.domain.name 다시 시작
请记得为所有必要的文件夹设置权限.
如果遇到500错误,以下是一些建议:
- 운영Easy 服务器要求检查,尝试修复验证失败的问题
- 备份数据库
- 从客户区下载最新软件包
- 确保웹에는 모든 것이 있습니다.完全访问权限的공개, 파일, 로그, tmp폴더
- 운영번들 개발 시험 --without 설치
- 운영간부 레이크 easyproject 번들 : RAILS_ENV = 생산 설치
- 과중한 사용 服务器
- 删除任何第3방적 Redmine插件(也从数据库中删除)
- 이메일을 보내support@easyredmine.com,并附上日志/production.log文件
이 오류의 여러 가지 원인이 있습니다. 여기에 몇 가지 도움말입니다 :
- 브라우저 캐시 문제 - 브라우저에서 캐시를 삭제 시도
- DNS 문제
- 서버 설정 문제
먼저 연결 및 네트워크를 확인합니다 (ping 명령 또는 traceroute 명령을 사용하여 서버에 연결할 수 있는지 확인). 방화벽 서버 측.
위의 모든 것이 괜찮아 보인다면 nginx error.logs에서 정보를 얻으십시오. 서버 측에서 nginx error.log 확인-/var/log/nginx/error.log
당신의 nginx 구성이 표준과 일치하는지 다시 확인합니다. 표준의 nginx 구성은 여기에서 찾을 수 있습니다 :
https://www.redmine.org/projects/redmine/wiki/HowTo_configure_Nginx_to_run_Redmine
(쉬운 소프트웨어에 의해 사용되는 등)의 nginx 구성의 예. 그것은 단지 몇 가지 변수를 최적화 공식 것과 매우 유사 :
사용자 www가 데이터;
worker_processes 8;
worker_rlimit_nofile 60000;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
이벤트 {
worker_connections 10240;
#의 multi_accept에;
}
HTTP {
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # SSLv3를 사용하지 마십시오. ref : POODLE
/etc/nginx/mime.types 포함;
default_type 애플리케이션 / 옥텟 스트림;
2048을 server_names_hash_bucket_size;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
send_timeout 1800;
client_body_timeout 1800;
client_header_timeout 1800;
proxy_read_timeout 1800;
220m을 client_max_body_size;
fastcgi_buffer_size 64K;
128 16k는 fastcgi_buffers;
0을 proxy_max_temp_file_size;
4096을 types_hash_max_size;
128을 types_hash_bucket_size;
proxy_busy_buffers_size 256k;
proxy_buffers 8 256k;
256k을 proxy_buffer_size;
gzip on;
gzip_disable "MSIE [1-6] \. (* SV1?!).";
/etc/nginx/conf.d/*.conf을 포함한다;
은 / etc / nginx를 / 사이트 사용 가능 / * 포함한다;
포함은 / etc / nginx를 / 사이트 오토 / *;
}
502 오류의 다른 가능한 원인은 ...
유니콘 인해 전혀 실행되지
- 권한이 부족합니다
- 승객의 잘못된 버전
- 잘못된 루비 버전
- 누락 보석
- 깨진 파일 시스템
정확한 문제를 확인하려면, 당신은 쉽게 레드 마인 (production.log / 로그)에서 유니콘 또는 아파치 + 응용 프로그램 로그에서 오류 로그를 확인해야합니다
시간 초과
저 시간 제한이 구성된 경우,이 오류가에 나타납니다 :
- 큰 수출
- 서버의 과부하
- 레이크 작업은 GUI에서 실행
MySQL의 연결 제한
당신이 MySQL로 허용되는 연결의 충분한 수를 가지고 있는지 확인하십시오. 그것은 사용자의 수에 따라 달라집니다,하지만 당신은 적어도 100 허용해야한다.
此错误发生은 2018年1.2版本(平台04.00及更高版本)之后입니다.
升级安装过程中出现了以下错误.
[!] 解析`Gemfile`时发生错误:
[!] 解析`Gemfile`时发生错误:无法加载此文件--
# 플러그인 'rys-bundler', github : 'easysoftware / rys-bundler', 분기 : 'master'> Plugin.hook ( 'rys-gemfile', self)
Bundler는 번들러를 사용하는 방법입니다.
这是由于过时의 redmine안심폰은 装程序版本引起的입니다.
해결책:
安装升级지앞
$ gem 설치 redmine-installer
这个问题发生您에서 Easy Redmine URL上使用后缀时,例如:https://company.com/easyredmine/
에서 这种情况下,您需要确保将变weightRAILS_RELATIVE_URL_ROOT配置为您的正确后缀/easyredmine
Bitnami :
- 创建一个额외적인配置文件config/additional_environment.rb
- config.action_controller.relative_url_root = "/ easyredmine"
- 然后预编译资源(rake easyproject:install RAILS_ENV=production)并启动服务器
确保已安装并运行 wkhtmltopdf( wkhtmltopdf 需要 X 服务器或其他仿真器)
使用以下命令进行测试:"wkhtmltopdf google.com google.pdf"
添加到您的代理配置中:
proxy_set_header X가 - 전달 - 프로토 HTTPS
크론 구성을 확인하십시오. 레이크 작업은 매우 중요하다 않습니다. 루트로 실행합니다. 이 권한이 부족하여 실패의 원인이됩니다.
의는 사용자로 쉽게 레드 마인을 실행한다고 가정 해 봅시다 쉽게. 명령은 다음과 같습니다
활성 crons보기 의 crontab -u 쉽게 -l
편집 의 crontab -u 쉽게 -e
변경 승인 sudo 서비스 cron reload
모든 5의 분 크론을 실행하는 예 :
* / 5 * * * * /home/easy/scripts/easy_scheduler.sh &> / dev / null
#! / bin / bash -l
LOG_FILE = "/ home / easy / current / log / easy_scheduler_rake.log"
echo "$ (날짜 '+ % Y- % m- % d % H : % M : % S') 레이크 시작">> $ {LOG_FILE}
cd / home / easy / current && bundle exec rake easyproject : scheduler : run_tasks RAILS_ENV = production >> $ {LOG_FILE}
echo "$ (날짜 '+ % Y- % m- % d % H : % M : % S') 끝 갈퀴">> $ {LOG_FILE}
/home/easy/scripts/easy_scheduler.sh는 실행 파일이어야합니다.
sudo chmod + x /home/easy/scripts/easy_scheduler.sh
서버에서 크론을 설정하는보다 정확한 매뉴얼을 인터넷을 검색하는 것을 망설이지 말라. 그것은 독점적으로 쉬운 레드 마인이 필요한 기능하지 않습니다.
确保您的网络服务器支持URL地址的实际大小
确保您Webrick을 사용하지 않는 것이 좋습니다!
- 새로운 종류의 웹과 Ruby가 있습니다.
- 새로운 配置慢速过滤器查询,以显示较少的字段
- 큼직한 CRON以减少启动频率
- 参考此案例研究 - Ruby의 전통적인 Rails가 지원되지 않습니다.
- 检查您的配置 - https://www.easyredmine.com/resources/installation/1885-recommended-optimal-configuration-of-easy-redmine-server
从旧의 Redmine은 제조 업체입니다.
Redmine의 配置文件中更改默认文件位置,或者可以使用符号链接。不建议使用局域网或云存储来亘储附,因为会출발可靠性问题.
配置 :
./config/configuration.yml
# 附件存储的绝对路径。
# 默认情况下,是您的Redmine实例中的“파일”目录。
# 您的EasyRedmine은 需要对此目录具有读写权限。
# 예문:attachments_storage_path 경우 : / var / www /에서 레드 마인 / 파일
문제 해결:
如果无法打开附件,请查看./log/production.log以获取常见错误 :
无法发送附件,/var/www/redmine/files/2015/08/150805095407_xxx.PNG불가재는 없습니다
이노엔트,权限被拒绝...그래요.
确保您的网络服务器具有完全访问权限의公共、文件、日志、临时폴더
除不应用程序获取,否则您的存储库中的新提交不会在Easy Redmine中反映出来。您需要在您的存储库客户端(github,gitlab,TortoiseSVN等)上设置Webhooks,并提供有关您的Easy Redmine이 있습니다.
- 이동정리 >> 设置 >> 存储库
- 사용 가능한 WS
- 生成API密钥
- 저장
- 转到您的存储库客户端
- 添加웹훅
假设您的站点是easyredmine.company.com
对于git - https://easyredmine.company.com/ SYS / git_fetcher
다음 https://easyredmine.company.com/ SYS / git_fetcher? 키 =[API 키]
- 根据客户端设置,可能需要一个单独的URL或将密钥放入不同字段中
SVN - https://easyredmine.company.com/ SYS / fetch_changesets
다음 https://easyredmine.company.com/ SYS / fetch_changesets? 키 =[API 키]
从第5点开始, 一切city取决于存储库客户端, 与Easy Redmine设置无关.内容.
配置您의 Easy Redmine은 请确保使用至少一级域name, 예를 들어http://myeasyredmine.com而不是仅仅使用http://myeasyredmine。某些浏览器可能无法访问它。
转到管理 >> 设置 >> 电子邮件퉁지
地址是否正确에서 并验证.
它应该与配置文件中的地址상동(或至少来自来自服务器)입니다.
에 따르면知识库中本文检查您的配置.
为了验证配置是否正确,请尝试从您의 Easy Redmine은 telnet 连接到邮件服务器을 사용합니다.
telnet your.domain.here port_number_here(例如:telnet gmail.com 465)
它将向您显示是否真的可以连接到您的邮件服务器,或者您的邮件服务器配置存 in 问题.
插件안장
- 不要以ROOT사용户身份安装插件
- 首先,如果存에서 Easy Gantt插件,请删除(plugins/easy_gantt*)
- 将所有解压的插件复到REDMINE_ROOT/plugins目录下
- REDMINE_ROOT에서 다운로드
运行 : |
$ 번들 설치 |
- (또는 번들 업데이트) |
$ 번들 exec rake db: 마이그레이션 RAILS_ENV=프로덕션 |
$ 번들 실행 레이크 레드마인:플러그인:마이그레이션 RAILS_ENV=프로덕션 |
之后,启动服务器。
成功安装的要求
- Redmine 대표: Redmine 3.2.x, 3.3.x, 3.4.x, 4.x兼容.
- Ruby版本:2.3+(推荐2.6)。
- 数据库类型:MySQL(推荐),PostgreSQL
에 따르면#install중앙의 보안이 유지되고 있습니다.support@easyredmine.com并附上日志中的错误부분입니다.
비트나미상안장
Bitnami未经测试,也不保证可行。如果安装失败,请手动运行:
运行 : |
$ 번들 업데이트 |
$ 레이크 dB : 마이그레이션 |
$ 레이크 레드 마인 : 플러그인 : 마이그레이션 |