[infobox title="前言"]最近突然想让手头废弃了很久的vps重新发光发热,于是准备搭建一个像Konachan一样的色图站,正巧前段时间在GitHub上找到了Konachan使用的源码Moebooru。[/infobox]

[infobox title="准备阶段"]说实话没什么可准备的。。。不过为了尽可能不被之前的各种设置影响,于是手动重装了一次系统,于是系统用的还是debian9,站点程序就是上面的那个GitHub存储库直接下载的版本,通过Moebooru的Readme可以知道大概需要安装Ruby,PostgreSQL,Bundler,gem等一大堆的东西。。于是先全部apt了一波quq

然后准备开始设置数据库。。。大概就是直接su到postgres用户。。然后psql -c "create user 'user_name' with password 'the_password' createdb;"....不过说起来咱对于各种数据库完全一脸懵逼的。。。基本上全得靠google。。。。

数据库ok之后开始准备安装需要的包了。。。。根据提示,使用了bundle install命令。。然后遇到了非常多的问题。。。比如ruby自带一部分工具版本号不符合要求。。所以得手动安装什么的。。。所以经历无数次失败后从ruby官网下载了ruby的源码包然后手动编译安装了。。。。

然后发现nokogiri无论怎么就是装不上。。。去nokogiri官网看了一下安装方法。。。总之就直接sudo apt-get install build-essential patch ruby-dev zlib1g-dev liblzma-dev

gem install nokogiri就好了。。。

然后是gem install rake 'require’: cannot load such file — “ripper” (LoadError)。。。没错。。。又是一大堆要手动解决的东西。。。因为这个好像是编译ruby的时候没有额外编译这个包导致的。。。所以这个只能重新编译。。。。总的来说。。。只用改一下编译选项就好了。。。。./configure --prefix=${PREFIX} --enable-shared --disable-install-doc然后重新安装。。。

到此为止需要的包大致就算全部解决了。。。。途中虽然还遇到了诸如ssl什么的报错。。。不过那些都随便apt装一下就解决了。。。所以就不在这里记录了。。。

[/infobox]

[infobox title="也许可以开始享乐了?"]

根据Readme的叙述。。。

bundle install

结束后,创建config/database.ymlconfig/local_config.rb。。。内容大致上就是站点名称啦。。。。站点管理员邮箱还有数据库连接方式什么的。。。基本上按照给出的示例文件都没问题。。。。

于是确认配置文件保存完,权限都给对之后!开冲……???不不不。。。。咱还收到了另一条报错。。。

execjs-and-could-not-find-a-javascript-runtime

简单来说。。。没有办法跑javascript。。。。嗯。。。。所以还得去看看怎么办。。。根据stackoverflow的回复。。。去看了下Github的execjs。。。然后根据提示

gem install execjs(gemfile里就不能多写一行嘛。。。。) 

这回再跑一波。。

bundle exec rake db:reset 终于正常的跑起来了! 访问服务器看看,好像没什么问题,但是机智的咱突然想到。。。所以站点管理员是谁?什么账号?怎么登陆???? 看了一圈配置文件都没找到。。。登进数据库绕了一圈没发现任何用户。。。所以。。。。没有管理员?总之先注册一个账户试试好了。。。注册完成后发现第一个注册的新用户默认就是管理员。。。。好吧。。。。也算能理解了。。 体验了一下上传图片,好像也没什么问题。。。于是终于可以开始给他上传色图了!!! 至此。。。终于算是安装完成了。。。 ps:写这篇文章的时候旧服务器好像出了点问题。。。什么内容都发不出去。。。。所以顺便拖了很久才发quq

[/infobox]