2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Laravel】apacheのバーチャルホスト設定

Last updated at Posted at 2019-12-23

ローカル開発環境でlaravelで作成したwebアプリをVPSでデプロイするまでの流れを書きます。

##前提条件

  • githubにwebアプリをpush済み
  • conohaのvpsサーバー
  • webサーバー:apache
  • DNSサーバー:ムームードメイン
  • サーバーサイド言語:PHP(Laravel)
  • メインドメイン名:jum11.com
  • サブドメイン名:todo.jum11.com
  • メインドメインのDocumentRootは/var/www/html/(app名)/public
  • サブドメインのDocumentRootは/var/www/html/(app名)/public

※1.(app名)は自身のファイル名をいれてください。

###apacheのvirtualhost化についての参考記事です。
https://weblabo.oscasierra.net/apache24-centos7-virtualhost/

#DNSサーバーの設定をする。

##ムームードメインでサブドメインの設定

1.ムームーDNSをクリック

スクリーンショット 2019-12-22 14.02.18.png

2.変更をクリック

スクリーンショット 2019-12-22 14.05.25.png

3.入力

サブドメインにしたい箇所に入力。今回はtodoを追加
※serchは別のサブドメインです。無視してください。

スクリーンショット 2019-12-22 14.06.37.png

#VPS側の設定

#Webアプリのファイルを準備する。

##githubにpushしたリポジトリをクローン(一例です)

$ cd /var/www/html
$ git clone (リポジトリURL)

##メインの独自ドメインの設定

メインの独自ドメインはjum11.comとする。

##jum11.com用の設定ファイルを作成

$ sudo vi /etc/httpd/conf.d/jum11.com.conf
/etc/httpd/conf.d/jum11.com.conf
<VirtualHost *:80>
  ServerName jum11.com
  DocumentRoot "/var/www/html/(app名)/public"
  DirectoryIndex index.html index.php
  ErrorLog /var/log/httpd/jum11.com_error_log
  CustomLog /var/log/httpd/jum11.com_access_log combined
  AddDefaultCharset UTF-8
  <Directory "/var/www/html/(app名)/public">
    AllowOverride All
  </Directory>
</VirtualHost>

###解説
ServerNameは独自ドメインを設定、今回はjum11.com
DocumentRootは

#virtualhostの有効化

$ sudo vi /etc/httpd/conf/httpd.conf

##Listenの下に追加

Listen 80
+ NameVirtualHost *:80

この記載で複数のドメインを使いますよと宣言する。

#サブドメインの設定ファイルを作成

##todo.jum11.com用の設定ファイルを作成

今回はサブドメインをtodo.jum11.comとする。

$ sudo vi /etc/httpd/conf.d/todo.jum11.com.conf
/etc/httpd/conf.d/todo.jum11.com.conf
<VirtualHost *:80>
  ServerName jum11.com
  DocumentRoot "/var/www/html/(app名)/public"
  DirectoryIndex index.html index.php
  ErrorLog /var/log/httpd/todo.jum11.com_error_log
  CustomLog /var/log/httpd/todo.jum11.com_access_log combined
  AddDefaultCharset UTF-8
  <Directory "/var/www/html/(app名)/public">
    AllowOverride All
  </Directory>
</VirtualHost>

##apachを再起動

$ sudo systemctl restart httpd.service

#Laravel側の設定を実施

##公開するファイルに移動する。

$ cd 移動先

##composerインストール

$ composer install

##.envファイルの設定

  • envファイルの作成(gitではenvファイルは対象外となるため
  • APP_KEYの設定(ローカルで作成したKEYをそのままコピー)
  • databaseの設定(sqlite3w使用する)
.env
APP_NAME=Laravel
APP_ENV=local
+ APP_KEY=ここに書く
APP_DEBUG=true
APP_URL=http://localhost

+ DB_CONNECTION=sqlite
- DB_HOST=127.0.0.1
- DB_PORT=3306
- DB_DATABASE=homestead
- DB_USERNAME=homestead
- DB_PASSWORD=secret

##databaseファイルの作成

$ touch database/database.sqlite

##migrationの実施

$ php artisan migrate

##seederの実行(必要に応じて)

$ php artisan db:seed

##権限関連を修正

$ sudo chmod -R 777 storage/
$ sudo chmod -R 777 bootstrap/cache/

##データベースに書き込む場合は(必要に応じて)

$ sudo chmod -R 777 database/

#メインドメインとサブドメインにアクセスして確認する。

以上です。

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?