skillup

技術ブログ

サーバー・ネットワーク

herokuでのhttpd.conf設定

投稿日:

前回の記事でLet’s EncryptでSSL設定する場合、 http://ドメイン/.well-known/ というURLにアクセスする必要があります。

ただherokuの場合、隠しフォルダ、隠しファイル自体が403エラーになり、アクセス自体ができないんですよね。

アプリ側でルーティングを設定しようが、htaccessでコントロールしようができませんでした。

herokuの場合、サーバーの設定などはすでに出来上がっており、カスタマイズが難しいんですよね。

四苦八苦して調べたところ、httpd.conf自体を上書きできるとのことでなんとか上記URLにアクセスさせることができました。

Procfile

herokuのようなPaasの場合、何も設定をしなくてもある程度動かすことができますが(正確にいうと省略されてる)、細かいカスタマイズやコマンドなどを入れることもできます。

その場合、ルートディレクトリにProcfileというテキストを作り、ここに起動コマンドを書いておくことで任意の設定ファイル(httpd.confなど)を読み込ませることができます。

Herokuに必要なProcfileの書き方についてまとめておく

Procfileですが、今回私が書いたのは下記の一行だけです。

herokuの管理画面を見ると
web heroku-php-apache2 となっていますが、これがherokuが動いているプラットフォーム(dynoと言います。)になります。

実際にはここが起動しているようですので、起動コマンドが web: vendor/bin/heroku-php-apache2 のようになります。

修正したhttpd.confですが以下がheroku上で使われている実際はgitで確認できます。
https://github.com/heroku/heroku-buildpack-php/blob/master/conf/apache2/heroku.conf

私の場合、上記ファイルをまずそのままコピペし、Procfileと同階層(つまりはルートディレクトリ)におき、

のように書き換えてアップしたところ無事隠しフォルダが見えました。(結果としてこれ自体は前回の記事で触れた通り、使用しなかったのですが・・・)

他にも色々と設定変更ができるようです。

-サーバー・ネットワーク
-

執筆者:


  1. […] (注:実はherokuの場合このurl自体にアクセスをさせるのが大変でした・・・ 参考リンク herokuでのhttpd.conf設定 ) […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Dockerでのredis活用(redisinsightなどについて)

引き続きdockerネタですがredisを使ったネタに関して。 redis自体は以前のエントリーでも説明しましたが、一般的なキャッシュサーバーかと思います。 今回はredis自体の説明ではなくdock …

no image

SAM(AWSのサーバーレスフレームワーク)について

LambdaやAPIGatewayをちょこちょこいじってますが、goなどを使っているとローカルでの開発時にはAPIなどと直接連携したりすることはできません。 またデプロイ自体が面倒で画面からポチポチや …

no image

Linuxコマンドでのテキスト整形 CSV系の処理など

以前、対テキストファイル系のLinuxコマンドの使い方を紹介しましたが、その関連エントリーを。 今回やるのはCSV系の処理ですね。 id name age 1  suzuki 35 2  tanaka …

no image

クロスサイトスクリプティング(XSS)

これまた非常によく聞く攻撃方法ですね。 Contents1 クロスサイトスクリプティングとは?2 被害3 対策 クロスサイトスクリプティングとは? 動的なページの表示生成の際に悪意のあるスクリプトを埋 …

no image

nginxのlocationディレクティブ内のリダイレクト処理について

nginxのlocationディレクリブ内のリダイレクト処理に関して。 結構長い間携わっていますが、適当に理解していた部分が多かったので再度復習です。 特にドメインのサブディレクトリでサービスを運用し …

アーカイブ