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

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

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

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

PHP

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

Q&A

1回答

1642閲覧

xreaサーバーのデプロイでエラーが起きる

oooz

総合スコア9

Laravel

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

PHP

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

0グッド

0クリップ

投稿2023/03/30 13:03

編集2023/03/30 16:45

実現したいこと

xreaサーバーの無料プランを使用し、作ったものをデプロイしたいのですが、最終的に

イメージ説明

と表記され表示がされません。
これを解決し、デプロイを行いたいです。

前提

デプロイ初心者です。以下に取り組んだ内容を記載します。
(既にxreaサーバーに登録は終わっています。)

まず取得したドメインのサイト設定、詳細設定からphpのバージョンを変更しました。
(作成したもののphpバージョンが8.2だったので、php82に設定しました。)

「ツール/セキュリティー」から「SSH接続IP許可」をクリックし設定。

「データベース」から「Postgresql」のデータベースを作成
(今回はpostgresqlを使ってデータベースを構築してみました。)

ツールからphpPgAdminをインストール

macのターミナルに

ssh アカウント名@サーバー

を入力し、ログイン

ディレクトリの移動に「chsh」を使用しようとすると

-bash: chsh: コマンドが見つかりません

と表記され使えなかったため、
https://qiita.com/isononatane/items/2879ef4783c32278a64f
のサイトを参考に「bash」に入りディレクトリを変更。

「cd public_html/」へフォルダ移動

「git clone」でgithubのリポジトリをクローン
(HttpsのリポジトリURLでクローン)

あとはプロジェクトのenvファイルの「APP_URL」とかを編集すればいいと思ったのですが、前記のようにエラーが出てきてしまいます。

この場合どのディレクトリをいじるのか、xreaサイトで何かしなければらないのかよくわからないです。

試したこと

検索し新たに
composer
をインストールしたり、何度かクローンしてみたり、xreaにログインし直したりしたのですが、解決には至っていません。

補足情報(FW/ツールのバージョンなど)

mac使用
phpバージョン
PHP 8.2.3 (cli) (built: Feb 15 2023 00:30:25) (NTS)

追記

https://qiita.com/FoolMaple/items/1bbd628bccf3b68b64ba
このサイトを真似て作成し直しましたが、同様にエラーが起こってしまいます。

さらに追記

xreaのディレクトリを確認すると、どうやらディレクトリ所有者が「root」となっている?ようです。これを変更する方法を探したのですが、よくわかりません。どのように変更すればいいでしょうか?
イメージ説明

またパーミッションの設定も、下記のように変更していますが、これでいいのでしょうか?パーミッションを変更しても画面表記は変わりません。
イメージ説明

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

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

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

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

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

m.ts10806

2023/03/30 23:09

そのサーバーはLaravelの環境要件全て満たしていますか? レンタルサーバ且つ無料だとかなり難しいと思います。 専用サーバなどでユーザ自身がほぼ初めから自由にできる環境推奨。初心者向けではないです。 いずれにしてもプランなど提示されたほうが良いとは思いますが、同じプランをたまたま利用している回答者は希少かもしれません。 サーバのサポート窓口に問い合わせたほうが良くも悪くも進むように思います(そこまでサポートしてないかもしれませんが、聴くだけ聞いてみてください)
oooz

2023/03/31 03:05

プランは一応無料のプランを使っています。 一度サポートに問い合わせてみます。
guest

回答1

0

ディレクトリでいうと、 public_html/my-app のようなディレクトリにアプリを clone しているのかと思いますが、Laravelが起動するディレクトリはアプリ内のpublicディレクトリです。

リポジトリ名が my-app だとして、

public_html/my-app public_html/my-app/app public_html/my-app/public ...

のようなディレクトリ構成になっている場合、URLとしては
http://user.s001.xrea.com/my-app/public のようなものになります。

また、public_html以下にcloneする手順は良くないやり方です。
このディレクトリにファイルを設置するとWebからアクセス可能になってしまうので、ログファイルなど一部の情報が漏洩します。
Laravelではpublicディレクトリの中身以外を公開ディレクトリに配置してはいけません。

より正しく公開するのであれば、

my-app my-app/app my-app/public public_html/

のように、public_htmlの外にmy-appをcloneしたあと、
my-app/publicディレクトリの中身をpublic_htmlディレクトリにコピーする、あるいはシンボリックリンクを貼るのが良いかと思います。
この場合の公開URLはhttp://user.s001.xrea.com の様に、ドメイン名のみになります。

投稿2023/04/11 22:52

Eggpan

総合スコア3257

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問