HomoChecker はホモ(@mpyw)にリダイレクトするホモのためのホモの輪です。
@java_shit にカミングアウトしてください。@mpyw と関係があってもなくても構いません。
DNS を適切に設定したあと、お使いの Web サーバーに合わせて設定を行います。
<VirtualHost *:80>
ServerName homo.example.com
Redirect permanent / https://twitter.com/mpyw
</VirtualHost>server {
listen 80;
listen [::]:80;
server_name homo.example.com;
return 301 https://twitter.com/mpyw;
}hosts:
"homo.example.com:80":
listen:
port: 80
paths:
"/":
redirect:
url: https://twitter.com/mpyw
status: 301Web サーバーが静的コンテンツ配信のみの場合は HTML によるリダイレクトを行います。
<!doctype html>
<title>homo</title>
<meta http-equiv="refresh" content="1; url=https://twitter.com/mpyw">または Cloudflare を利用してサーバーレスホモを構築します。
- DNS で
homo.example.comを Cloudflare を通すように設定します。 - Page Rule を作成します。
If the URL matches:に*homo.example.com/*を指定します。Then the settings are:にForwarding URL、301 - Permanent Redirect、https://twitter.com/mpywを指定します。
Chrome、Firefox、Internet Explorer の最新版で動くのでたいていのホモは救われます。
開発環境の構築には Docker Compose のインストールが必要です。
nginx + PHP-FPM + PostgreSQL + Redis で構成されています。
本番環境の構築にはコンテナーランタイム(Docker など)のインストールが必要です。
nginx + PHP-FPM で構成されており、以下の環境変数を使用して設定を行います。
$ export HOMOCHECKER_API_HOST=api$ export HOMOCHECKER_DB_HOST=database
$ export HOMOCHECKER_DB_PORT=5432
$ export HOMOCHECKER_DB_USERNAME=homo
$ export HOMOCHECKER_DB_PASSWORD=homo
$ export HOMOCHECKER_DB_SSLMODE=prefer
$ export HOMOCHECKER_LOG_LEVEL=debug
$ export HOMOCHECKER_REDIS_HOST=redis
$ export HOMOCHECKER_REDIS_PORT=6379
$ export HOMOCHECKER_TWITTER_CONSUMER_KEY=
$ export HOMOCHECKER_TWITTER_CONSUMER_SECRET=
$ export HOMOCHECKER_TWITTER_TOKEN=
$ export HOMOCHECKER_TWITTER_TOKEN_SECRET=初回実行時のみイメージのビルド作業が必要です。
$ bin/initwebpack のモード、ポート番号を指定する場合は環境変数を変更します(任意)。
$ export HOMOCHECKER_ENV=production
$ export HOMOCHECKER_PORT=4545IPv6 接続を有効にするためには、あらかじめサブネットを指定してネットワークを作成しておく必要があります。
$ docker network create --attachable --ipv6 --subnet=fd00:4545::/48 homochecker_ipv6次のコマンドでコンテナーを起動します。
$ COMPOSE_DOCKER_CLI_BUILD=1 \
DOCKER_BUILDKIT=1 \
docker-compose up -d --buildブラウザーで次の URL にアクセスします。
http://localhost:4545
コンテナーを終了するには次のコマンドを使用します。
$ docker-compose stop現在の最新データは SQL 形式でダウンロードできます。
次のコマンドで PostgreSQL にログインできます。
$ docker-compose exec database psql -dhomo -Uhomoたとえば最新のデータを入れるには次のようにします。
$ curl -s 'https://homo.chitoku.jp:4545/list/?format=sql' |
docker exec -i $(docker-compose ps -q database) psql -dhomo -Uhomo次のコマンドでテストを実行します。
$ bin/test