在debian 下配置 redmine

参考

http://www.redmine.org/projects/redmine/wiki/RedmineInstall#Installation

http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_using_Debian_package


第一步:安装数据库和redmine

安装mysql和redmine
apt-get install mysql;
apt-get install redmine;


第二步:配置数据库

CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';

配置redmine的数据库
vim /usr/share/redmine/config/database.yml

写入
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: my_password
  encoding: utf8
development:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: my_password
  encoding: utf8

创建快捷方式
ln -s /usr/share/redmine/config/database.yml /etc/redmine/default/database.yml

进入redmine目录
cd /usr/share/redmine/
修改gemfile
vim Gemfile
添加
gem 'mysql2'
gem 'activerecord-mysql2-adapter'

第三步:安装包管理

gem install bundler

执行
bundle install

第四步:session和 密匙

with Redmine 1.4.x:
rake generate_session_store

with Redmine 2.x:
rake generate_secret_token

第五步:构造数据库

RAILS_ENV=production rake db:migrate


第六步:配置文件权限

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R redmine:redmine files log tmp public/plugin_assets
sudo chmod -R 755 files log tmp public/plugin_assets

第七步:安装thin 并配置

aptitude install thin;

新建redmine的thin配置文件
$ thin config --config /tmp/redmine.yml --chdir /usr/share/redmine --environment production --socket /var/run/redmine/sockets/thin.sock  --daemonize --log /var/log/thin/redmine.log --pid /var/run/thin/redmine.pid --user root --group root --servers 1 --prefix /redmine
# mv /tmp/redmine.yml /etc/thin/redmine.yml
# chown root:root /etc/thin/redmine.yml
# chmod 644 /etc/thin/redmine.yml

启动thin 服务
 thin restart -C /tmp/redmine.yml

第八步:配置nginx

新建1个nginx代理
vim /etc/nginx/proxy_opts

写入
# Shared options used by all proxies
proxy_set_header        Host $http_host;

# Following headers are not used by Redmine but may be useful for plugins and
# other web applications
proxy_set_header        X-Real-IP $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header        X-Forwarded-Proto $scheme;

# Any other options for all proxies here

新建redmine的配置
 vim /etc/nginx/sites-available/redmine

填写:
upstream redmine_thin_servers {
        server  unix:/var/run/redmine/sockets/thin.0.sock;
        #server 127.0.0.1:3000;
        #server unix:/tmp/thin.sock;
        #server unix:/tmp/thin.1.sock;
        #server unix:/tmp/thin.2.sock;
        #server unix:/tmp/thin.3.sock;
        # Add additional copies if using multiple Thin servers
        #server unix:/var/run/redmine/sockets/thin.1.sock;
}

server {

        listen   80; ## listen for ipv4
        listen   [::]:80 default ipv6only=on; ## listen for ipv6

        # Set appropriately for virtual hosting and to use server_name_in_redirect
        server_name  localhost 192.168.49.119;
        server_name_in_redirect off;

        access_log  /var/log/nginx/localhost.access.log;
        error_log  /var/log/nginx/localhost.error.log;

        # Note: Documentation says proxy_set_header should work in location
        #       block, but testing did not support this statement so it has
        #       been placed here in server block
        include /etc/nginx/proxy_opts;
        proxy_redirect off;

        # Note:  Must match the prefix used in Thin configuration for Redmine
        #        or / if no prefix configured
        location /redmine {
                root   /usr/share/redmine/public;

                error_page 404  404.html;
                error_page 500 502 503 504  500.html;

                # Send sensitive stuff via HTTPS
                # Remove if not using HTTPS
                # Note1:  Change $host to SSL CN if multiple host names used
                # Note2:  Adjust prefix, if different in Thin Redmine config
                rewrite ^/redmine/login(.*) https://$host$request_uri permanent;
                rewrite ^/redmine/my/account(.*) https://$host$request_uri permanent;
                rewrite ^/redmine/my/password(.*) https://$host$request_uri permanent;
                rewrite ^/redmine/admin(.*) https://$host$request_uri permanent;

                try_files $uri/index.html $uri.html $uri @redmine_thin_servers;
        }

        location @redmine_thin_servers {
                proxy_pass http://redmine_thin_servers;
        }
}
# HTTPS server (Should match HTTP server above with a few differences)
# Optional.  Remove rewrite directives above if not using.
server {

        listen   443; ## listen for ipv4
        listen   [::]:443 default ipv6only=on; ## listen for ipv6

        # Set appropriately for virtual hosting and to use server_name_in_redirect
        server_name  localhost 192.168.49.119;
        server_name_in_redirect off;

        access_log  /var/log/nginx/localhost-ssl.access.log;
        error_log  /var/log/nginx/localhost-ssl.error.log;

        # Note: Documentation says proxy_set_header should work in location
        #       block, but testing did not support this statement so it has
        #       been placed here in server block
        include /etc/nginx/proxy_opts;
        proxy_redirect off;

        # Note:  Adjust ssl_certificate{,_key} to custom SSL cert, if not
        #        using ssl-cert package
        ssl  on;
        ssl_certificate  /etc/ssl/certs/ssl-cert-snakeoil.pem;
        ssl_certificate_key  /etc/ssl/private/ssl-cert-snakeoil.key;

        # Note:  Must match the prefix used in thin configuration for redmine
        #        or / if no prefix configured
        location /redmine {
                root   /usr/share/redmine/public;

                error_page 404  404.html;
                error_page 500 502 503 504  500.html;

                try_files $uri/index.html $uri.html $uri @redmine_thin_servers;
        }

        location @redmine_thin_servers {
                proxy_pass http://redmine_thin_servers;
        }
}

创建web app配置快捷方式
rm /etc/nginx/sites-enabled/default
ln -s /etc/nginx/sites-available/redmine /etc/nginx/sites-enabled/redmine

重启nginx
sudo service nginx restart

第九步:启动测试

浏览器输入
http://192.168.49.119/redmine

补充

  1. ip部分大家修改为自己服务器或者虚拟机的地址
  2. email配置和脚本测试大家从官方文档中配置
  3. 如果配置有错误,欢迎留言补充说明
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
旅游社交小程序功能有管理员和用户。管理员有个人中心,用户管理,每日签到管理,景点推荐管理,景点分类管理,防疫查询管理,美食推荐管理,酒店推荐管理,周边推荐管理,分享圈管理,我的收藏管理,系统管理。用户可以在微信小程序上注册登录,进行每日签到,防疫查询,可以在分享圈里面进行分享自己想要分享的内容,查看和收藏景点以及美食的推荐等操作。因而具有一定的实用性。 本站后台采用Java的SSM框架进行后台管理开发,可以在浏览器上登录进行后台数据方面的管理,MySQL作为本地数据库,微信小程序用到了微信开发者工具,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得旅游社交小程序管理工作系统化、规范化。 管理员可以管理用户信息,可以对用户信息添加修改删除。管理员可以对景点推荐信息进行添加修改删除操作。管理员可以对分享圈信息进行添加,修改,删除操作。管理员可以对美食推荐信息进行添加,修改,删除操作。管理员可以对酒店推荐信息进行添加,修改,删除操作。管理员可以对周边推荐信息进行添加,修改,删除操作。 小程序用户是需要注册才可以进行登录的,登录后在首页可以查看相关信息,并且下面导航可以点击到其他功能模块。在小程序里点击我的,会出现关于我的界面,在这里可以修改个人信息,以及可以点击其他功能模块。用户想要把一些信息分享到分享圈的时候,可以点击新增,然后输入自己想要分享的信息就可以进行分享圈的操作。用户可以在景点推荐里面进行收藏和评论等操作。用户可以在美食推荐模块搜索和查看美食推荐的相关信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值