質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

1回答

872閲覧

laravelでデプロイに失敗する

maiko_01

総合スコア14

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

0クリップ

投稿2020/03/18 13:52

別会社が作ったlaravelのシステムを少しいじってほしいという依頼を受けました。
laravelは全く使ったことがなく、composer?ってなに?っという状態のため断ったのですが、
どうしても困っているということで引き受けなければならなくなりました。

前提知識としては、HTMLはずっと使ってきており、PHPはフルスクラッチでちょっとした処理を書ける程度です。

ライブラリを使用して出力しているPDFの住所を変えてほしいだけとのことですが、
そもそもディレクトリの構造の意味がわからず、かなり探してやっと対象ファイルが見つかりました。
※「https://example.sakura.ne.jp/pdf/hoge.pdf」で表示するPDFなので、ずっと/home/example/www/pdfフォルダを探していました・・。

本来は/home/example/deploy/hoge/current/resources/pdf.blade.phpという見当もつかない場所のファイルを参照していました。

前任の方が中途半端なドキュメント(仕様書とまでは言えないレベルですが・・)を残してくれていたので、それを見ながらなんとかたどり着いたのですが、そのファイル内では例えば郵便番号の出力は

php

1{{ config('myapp.pdf_postcd', '999-9999') }}

のように記述されており、全く別のディレクトリ/home/example/fuga/.envというファイルにPDF_POSTCDという定数?がありその値を変更しろと指示がありました。
deployフォルダにも.envはあるのに、fugaフォルダ内をいじるの?と訳がわからず設定すると、次は

下記の手順でステージング・ライブ環境へデプロイしてください。
ssh example@example.sakura.ne.jp
cd fuga

ステージング環境へのデプロイ ./vendor/bin/dep deploy staging ライブ環境へのデプロイ ./vendor/bin/dep deploy production

との指示がありました。

teraTermをインストールしてSSH接続し、
cd fuga
./vendor/bin/dep deploy production

を行うと、
?? Deploying HEAD on production
? Executing task deploy:prepare
example@example.sakura.ne.jp's password:
と表示され、FTPパスワードを入力してもエンターを押すと、また
example@example.sakura.ne.jp's password:

となり、デプロイ?が出来ません。

もうちんぷんかんぷんです。

とりあえずdeployフォルダの「pdf.blade.php」を直接編集し、

php

1{{ config('myapp.pdf_postcd', '999-9999') }}

このような記述も全て

php

1999-9999

のような直書きに変更してしまいました。

私の知識でもわかるのが、今度デプロイに成功したときはこれらが全て上書きされてしまいますよね・・?

どうすれば良いかわかりません。
ご教授の程よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/03/18 14:02

「フルスクラッチでちょっとした処理が書ける程度」が指す意味が分かりません。 ちょっとした処理ならフルスクラッチではないのでは? というか、仕事は困っている人を助けることではなく、あくまでビジネスなので、 できないことは相手がどうであろうとできないと断固たる態度でお断りしないと お互い大損害になることだってあります。 今のあなたが出来ることと言えば、無理して解読することでもLaravelを習得することでもなく きちんとできる人や業者を紹介して依頼するか、その別会社や担当者を引っ張り出してくることではないでしょうか。
maiko_01

2020/03/19 01:00 編集

>「フルスクラッチでちょっとした処理が書ける程度」が指す意味が分かりません。 >ちょっとした処理ならフルスクラッチではないのでは? 今回の質問に今までのシステム制作実績、ステップ数や具体的な処理などを説明する必要が無いと思い、「ちょっとした処理」と記載したのですが、いじわるのような拾い方をするのですね・・。 要は、フレームワークやライブラリなどを使ったことがないというニュアンスで伝えたかったです。※ほとんどの方はわかってくれていると思いますが・・。 今回はお仕事ではなく友人からの依頼なので、「困っている人を助ける」ことです。 予算が無く困っているようなので、勉強がてら私に解決できるのであれば・・と思い、環境をコピーして試行し、わからない点をteratailで初心者マーク付きで質問しています。 上記のように技術的な回答無しに揚げ足取りのような内容のみ投稿するのはご遠慮いただきたく存じます。
m.ts10806

2020/03/19 01:29 編集

いじわるでもなんでもなく、書いた通りに理解しているだけです。仰ってるほど自身の状態が正しく伝わる内容にはなってないと思います(フルスクラッチ云々は今回の質問要件には関係ないですし)。 挙げ足でもなんでもなく、顧客と開発者、双方が何の利益にもならない展開になるのが見えるので、より適切な方向性を提示しただけです。 直接の解決策ではないためこちらにコメントしています。 それにそもそも、タダで仕事の手伝いをしてもらうようなサイトではないですよ。お手伝いにしても…。何か違う気がします。 「ちんぷんかんぷんである」というのを依頼主に正直に話して別途予算をとってもらうか、自ら費用を捻出して業者をあたるしかないのではないでしょうか。 (初心者質問にも関わらず約半日経っても回答がつかないことから察することもあるのでは)
m.ts10806

2020/03/19 01:31

伝えたいのは「会社で使っているようなものをちんぷんかんぷんな初心者が扱って壊してしまうと大損害につながり、普通に業者に頼んだ方がずっと安く済むことになる」ということなんですけどね。 自分の趣味や勉強で作ったものと違うわけですから。例え知人の依頼であっても仕事と同等の責任を負います。(質問サイトで解決するような簡単な問題ではないという意味) 聞き入れないなら知りません。所詮赤の他人ですし。
maiko_01

2020/03/19 01:55

>質問サイトで解決するような簡単な問題ではないという意味 ・私はこのteratailでデプロイの方法を質問しています。 ・m.ts10806様はデプロイの方法を答えずに、「業者に頼んだ方が安い」という趣旨の回答を続けています。 この質問サイトの趣旨として、どちらがおかしいでしょうかね。 ビジネスに活用するようなツールを初心者の状態で開発しようとしている方がここで質問すると必ず 「素人が触るもんじゃない」「業者に頼むべき」「大損害につながる」 と答えられるのであれば、このサイトの利便性が大きく下がってしまいますね。
m.ts10806

2020/03/19 02:04

ん?そういう話じゃないですよ。 自分の会社のWebサイト作るときにちょっと授業で勉強した程度の学生に頼めますか?という話をしてます。 「素人が触るもんじゃない」も「業者に頼むべき」も「会社が作ったシステムだから」が前提です。 勉強のため趣味のためでデプロイしたいだけなら誰もこんな指摘しませんよ。
guest

回答1

0

./vendor/bin/dep デプロイツールが何か具体的ではないのでなんおツールだろうかとは思いますが、
大抵の場合、

.env は ステージング環境であれば、ツールが、.env.staging を複製して、自身の環境の中で、.env を作成します。プロダクション環境であれば、.env.production を複製して.env を作成します。

ですので、環境ごとに用意されている、.env.staging, .env.production をそれぞれ編集すれば良いはずです。

投稿2020/03/19 01:48

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maiko_01

2020/03/19 02:58

ご回答ありがとうございます! ありがとうございます。.env.productionは編集できました! SSHで./vendor/bin/dep deploy productionを行うと ?? Deploying HEAD on production ? Executing task deploy:prepare example@example.sakura.ne.jp's password: と表示され、FTPパスワードを入力してもエンターを押すと、また example@example.sakura.ne.jp's password: この繰り返しは何か思い当たる原因はありますでしょうか? わかれば教えてくださいm(__)m
退会済みユーザー

退会済みユーザー

2020/03/19 03:21 編集

そこはFTPパスワードじゃなくて、SSHのパスワードでしょう。 deplroyer はgit とかからソースコードをとってきますから、ソース管理プログラムにマージしてからでないと、変更は反映されません。 deplroyer って何?という状態なら、 本家 https://deployer.org/ や、https://qiita.com/ritukiii/items/ce1876b85c5bed68c93b この辺りをよく読み、仕組みを分かってからやったほうが賢明です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問