常见的Redmine安装和更新问题
在应用程序更新期间,日志中出现一个包含“您的SQL语法有误;请检查与您的MySQL服务器版本相对应的手册,以获取正确的语法使用方法..."的错误消息.
סיבה
这意味着您的数据库已过时,无法处理我们的应用程序发送的毷求。它叆
פִּתָרוֹן
您需要更新您的数据库.
如何更新数据库?
在בסיס ידע中有详细说明.
您已在权限不足的用户下安装或更新了Easy Redmine,未遵循我们在תיאור中的强烈建议(至少在过去一次).
- 根据服务器设置使用chgrpו -chown命令更正权限(例如:chgrp -R www-data public_html)
- 再次运行安装命令צרור exec מגרפה easyproject: להתקין RAILS_ENV = ייצור,这将清除缓存(如果以root身份运行,将לא יהיה成功)
- 重新启动服务器
如果您正在使用Easy Software提供的虚拟机,请在用户קל下运行:
sudo chown -R קל / home / קל / נוכחי
(在旧机器上 - sudo chown -R easy /srv/easyredmine/public_html)
sudo chgrp -R קל / home / קל / נוכחי
(在旧机器上 - sudo chgrp -R easy /srv/easyredmine/public_html)
cd / home / קל / נוכחי
(在旧机器上 - cd /srv/easyredmine/public_html)
צרור exec מגרפה easyproject: להתקין RAILS_ENV = ייצור
שירות sudo puma@your.domain.name הפעל מחדש
请记得为所有必要的文件夹设置权限.
如果遇到500错误,以下是一些建议:
- 运行Easy服务器要求检查,尝试修复验证失败的问题
- 备份数据库
- 从客户区下载最新的软件包
- 确保Web服务器具有完全访问权限的public、קבצים、יומן、tmpתיקיה
- 运行צרור להתקין --without מבחן פיתוח
- 运行צרור exec מגרפה easyproject: להתקין RAILS_ENV = ייצור
- 重启应用服务器
- 删除任何第三方的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;
עובד_עבודות 8;
Worker_rlimit_nofile 60000;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
אירועים {
חיבורי עובדים 10240;
# Multi_accept על;
}
http {
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # אל תשתמש ב- SSLv3 ref: POODLE
כולל /etc/nginx/mime.types;
יישום default_type / זרם אוקטט;
server_names_hash_bucket_size 2048;
access_log /var/log/nginx/access.log;
sendfile ב:
#tcp_nopush ב;
# keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
send_timeout 1800;
client_body_timeout 1800;
client_header_timeout 1800;
proxy_read_timeout 1800;
client_max_body_size 220m;
fastcgi_buffer_size 64K;
Fastcgi_buffers 128 16k;
Proxy_max_temp_file_size 0;
types_hash_max_size 4096;
Type_hash_bucket_size 128;
proxy_busy_buffers_size 256k;
Proxy_buffers 8 256k;
proxy_buffer_size 256k;
gzip on;
gzip_disable "MSIE [1-6] \. (* SV1?!.)";
כולל /etc/nginx/conf.d/*.conf;
כולל / etc / nginx / אתרי תומכים / *;
כולל / etc / nginx / אתרים-אוטומטי / *;
}
סיבות אפשריות נוספות לשגיאה 502 כוללים ...
Unicorn אינו פועל כלל, בשל
- הרשאות לא מספיקות
- גרסה הלא נכונה של נוסע
- גרסת רובה שגויה
- אבני חן חסר
- מערכת קבצים שבורות
כדי לברר את הבעיה המדויקת, אתה צריך לבדוק את יומני שגיאות Unicorn או Apache + יומן היישום קל Redmine (log / production.log)
פסק זמן
אם פסק זמן נמוך מוגדר, שגיאה זו תוצג על:
- יצוא גדול
- עומס של השרת
- משימות מגרפה לברוח GUI
הגבל של קשרי MySQL
ודא שיש לך מספר מספיק של חיבורים מותרים ל MySQL. זה תלוי במספר המשתמשים, אבל אתה צריך לפחות 100 מותר.
此错误发生在2018年1.2版本(平台04.00及更高版本)之后。
升级安装过程中出现了以下错误.
[!] 解析`Gemfile`时发生错误:
[!] 解析`Gemfile`时发生错误:无法加载此文件--
# plugin 'rys-bundler', github: 'easysoftware / rys-bundler', branch: 'master'> Plugin.hook ('rys-gemfile', עצמי)
Bundler无法继续.
这是由于过时的redmine安装程序版本引起的.
פִּתָרוֹן:
在安装升级之前
$ gem להתקין redmine-installer
这个问题发生在您在Easy Redmine URL上使用后缀时,例如:https://company.com/easyredmine/
在这种情况下,您需要确保将变量RAILS_RELATIVE_URL_ROOT配置为您的正确后缀/easyredmine
BitNami:
- 创建一个额外的配置文件config/additional_environment.rb
- config.action_controller.relative_url_root = "/ easyredmine"
- 然后预编译资源(rake easyproject:התקן RAILS_ENV=production)并重新启动服务器
确保已安装并运行 wkhtmltopdf( wkhtmltopdf 需要 X 服务器或其他仿真器)
使用以下命令进行测试:"wkhtmltopdf google.com google.pdf"
添加到您的代理配置中:
proxy_set_header X-Forwarded-הפרוטו https
בדוק את תצורת cron. חשוב מאוד כי משימות מגרפה הן לא המנוהל על ידי שורש. זה יגרום לכשל עקב הרשאות לא מספיקות.
נניח אתה מפעיל קל Redmine תחת משתמש קל. הפקודות הן:
הצג crons פעיל -l crontab -u קל
עריכה -e crontab -u קל
החל שינויים שירות
דוגמה להפעלת cron כל דקות 5:
* / 5 * * * * /home/easy/scripts/easy_scheduler.sh &> / dev / null
#! / bin / bash -l
LOG_FILE = "/ home / easy / current / log / easy_scheduler_rake.log"
הד "$ (תאריך '+% Y-% m-% d% H:% M:% S') התחל לגרוף" >> $ {LOG_FILE}
cd / home / קל / נוכחי && bundle exec rake easyproject: מתזמן: run_tasks RAILS_ENV = ייצור >> $ {LOG_FILE}
הד "$ (תאריך '+% Y-% m-% d% H:% M:% S') מגרפה סוף" >> $ {LOG_FILE}
/home/easy/scripts/easy_scheduler.sh חייב להיות קובץ הפעלה:
sudo chmod + x /home/easy/scripts/easy_scheduler.sh
אל תהססו לחפש באינטרנט מדריך מדויק יותר להגדיר cron בשרת שלך. זה לא תפקיד קל Redmine נדרש באופן בלעדי.
确保您的网络服务器支持URL地址的实际大小
确保您不要使用Webrick网络服务器!
- 确保您拥有最新版本的Web服务器和Ruby
- 重新配置慢速过滤器查询,以显示较少的字段
- 重置您的CRON以减少启动频率
- 参考此案例研究 - 不触碰Ruby代码的Rails加速
- 检查您的配置 - https://www.easyredmine.com/resources/installation/1885-recommended-optimal-configuration-of-easy-redmine-server
从旧的Redmine复制文件夹。
您可以在Redmine的配置文件中更改默认文件位置,或者可以使用符号链丮玥倨号链潮玥债云存储来存储附件,因为会出现可靠性问题。
配置:
./config/configuration.ym
# 附件存储的绝对路径。
# 默认情况下,是您的Redmine实例中的“files”目录.
# 您的EasyRedmine实例需要对此目录具有读写权限。
# דוגמה:attachments_storage_path: / var / www / redmine / קבצים
故障排除:
如果无法打开附件,请查看./log/production.log以获取常见错误:
无法发送附件,/var/www/redmine/files/2015/08/150805095407_xxx.PNG不存在或不可读
ENOENT,权限被拒绝...等等.
确保您的网络服务器具有完全访问权限的公共、文件、日志、临时תיקיה
除非应用程序获取,否则您的存储库中的新提交不会在Easy Redmine中反映出杨娜。存储库客户端(github,gitlab,TortoiseSVN等)上设置Webhooks,并提供有关您的Easy Redmine实例的信息。
- לך ל管理 >> 设置 >> 存储库
- 启用用于存储库管理的WS
- 生成API密钥
- 保存
- 转到您的存储库客户端
- 添加Webhook
假设您的站点是easyredmine.company.com
对于git - https://easyredmine.company.com/ Sys / git_fetcher
或 https://easyredmine.company.com/ Sys / git_fetcher? Key =[מפתח API]
- 根据客户端设置,可能需要一个单独的URL或将密钥放入不同的字段中
对于SVN - https://easyredmine.company.com/ Sys / fetch_changesets
或 https://easyredmine.company.com/ Sys / fetch_changesets? Key =[מפתח API]
从第5点开始,一切都取决于存储库客户端,与Easy Redmine设置无关。这是悅在座是您在后必须验证的内容。
在配置您的Easy Redmine域时,请确保使用至少一级域名,例如http://myeasyredmine.com而不是仅仅使用http://myeasyredmine。某些浏览器可能无法访问它。
转到管理 >> 设置 >> 电子邮件通知
并验证 מ-地址是否正确.
它应该与配置文件中的地址相同(或至少来自相同的 SMTP 服务器)䡊务器)亊亐捐真刐)。应该(如 gmail、yahoo 等)可能会拒绝通知。
על פי知识库中的本文检查您的配置.
为了验证配置是否正确,请尝试从您的 Easy Redmine 服务器使用 telnet 连接到邮件最劂
telnet your.domain.here port_number_here(למשל:telnet gmail.com 465)
它将向您显示是否真的可以连接到您的邮件服务器,或者您的邮件服器邮件服务在
插件安装
- 不要以ROOT用户身份安装插件
- 首先,如果存在旧的Easy Gantt插件,请删除(plugins/easy_gantt*)
- 将所有解压的插件复制到REDMINE_ROOT/plugins目录下
- 在REDMINE_ROOT目录下
运行: |
$ חבילה להתקין |
- (עדכון חבילה) |
צרור exec $ db מגרפה: להעביר RAILS_ENV = ייצור |
צרור exec $ מגרפה redmine: plugins: להעביר RAILS_ENV = ייצור |
之后,重新启动服务器。
成功安装的要求
- Redmine版本:与Redmine 3.2.x、3.3.x、3.4.x、4.x兼容。
- Ruby版本:2.3+(推荐2.6).
- 数据库类型:MySQL(推荐),PostgreSQL
לפי#להתקין中的安装过程进行操作。验证安装日志中是否没有任何错误。如验证安装日志中是否没有任何错误。如果有锕决,或者联系Support@easyredmine.com并附上日志中的错误部分.
在Bitnami上安装
Bitnami未经测试,也不保证可行。如果安装失败,请手动运行:
运行: |
$ עדכון החבילה |
db מגרפה $: נודדים |
$ מגרפה redmine: plugins: נודדים |