[ Laravel 5.2 ドキュメント ] 入門 -- Laravel Valet (Mac 開発環境)
1. 概要
Valet は、Vagrant、Apache、Nginx、または /etc/hosts ファイルがありません。ローカル トンネルを使用してサイトをパブリックに共有することもできます。
Mac では、マシンを起動すると、Laravel Valet は常に PHP 組み込み Web サーバーをバックグラウンドで実行します。その後、DnsMasq を使用して、Valet はすべてのリクエストを *.dev ドメイン名にプロキシし、ローカルマシンのインストールサイト。このような高速な Laravel 開発環境には、7M のメモリしか必要としません。
Valet は、Vagrant や Homestead を置き換えることを目的としたものではなく、より柔軟で、非常に高速で、使用するメモリ容量が少ない別のオプションを提供するだけです。
Valet は次のソフトウェアとツールを提供します:
- Laravel
- Lumen
- Statamic
- Craft
- WordPress
- Jigsaw
- 静的 HTML
もちろん、カスタム ドライバーを使用して Valet を拡張することもできます。
Valet Or Homestead
ご存知のとおり、Laravel は別の開発環境 Homestead も提供しています。ホームステッドとバレットは、対象とする視聴者と地域開発アプローチが異なります。 Homestead は、自動化された Nginx 構成を含む完全な Ubuntu 仮想マシンを提供します。完全な仮想化 Linux 開発環境が必要な場合、または Windows/Linux オペレーティング システムを使用している場合は、間違いなく Homestead が最適な選択肢です。
Valet は Mac のみをサポートしており、PHP とデータベース サーバーをローカルにインストールする必要があります。これは、Homebrew コマンド (brew install php70 および brew install mariadb) を使用することで簡単に実現できます。Valet は、最小限のリソース消費で非常に高速なサーバーを提供します。ローカル開発環境。PHP/MySQL のみが必要で、完全な仮想化開発環境が必要ない場合は、Valet が最適な選択になります。
最後に、Valet と Homestead は両方とも、ローカルの Laravel 開発環境を構成するための優れたヘルパーです。どちらを使用するかは、個人の好みやチームのニーズによって異なります。
2. インストール
Valet には Mac オペレーティング システムと Homebrew が必要です。インストールする前に、Apache や Nginx などの他のプログラムがローカル ポート 80 にバインドされていないことを確認する必要があります。インストール手順は次のとおりです。
- brew update を使用して Homebrew をインストールまたは最新バージョンに更新します
- brew サービスが有効であることを確認し、brew サービスを実行して正しい出力を取得しますリストが無効な場合は追加する必要があります。
- Homebrew 経由で PHP 7.0 をインストールします: brew install php70。
- Composer を介して Valet をインストールします。composer global require laravel/valet (~/.composer/vendor/bin がシステム パスにあることを確認してください)
- valet install コマンドを実行します。 Valet と DnsMasq をインストールし、ランダムに開始するように Valet バックグラウンドを登録します。
Valet をインストールした後、ping foobar.dev などのコマンドを使用してターミナルで *.dev ドメイン名に ping を実行してみます。Valet が正しくインストールされている場合は、127.0.0.1 からの応答が表示されます。
Valet バックグラウンドは、システムが起動するたびに自動的に開始され、手動で Valet start または Valet install を再度実行する必要はありません。
データベース
データベースが必要な場合は、コマンド ラインで brew install mariadb を使用して MariaDB をインストールできます。インストールが完了したら、ユーザー名を使用できます。 root と、データベースに接続するためのローカル マシン上の空のパスワード。
3. サービス サイト
Valet のインストール後、サービス サイトを開始できます。park および link
park コマンド
- Mac に新しいディレクトリ (例: mkdir ~/Sites) を作成し、このディレクトリに入ってバレーパークを実行します。このコマンドは、現在のディレクトリを Web ルート ディレクトリとして使用します。
- 次に、新しく作成したディレクトリに新しい Laravel サイト (laravel new blog) を作成します。
- ブラウザで http://blog.dev にアクセスします。
私たちがしなければならないのはこれだけです。これで、Sites ディレクトリに作成されたすべての Laravel プロジェクトに http://folder-name.dev 経由でブラウザからアクセスできるようになり、非常に便利だと思いませんか。
link コマンド
このコマンドは、ディレクトリ内の単一サイトを提供する場合にも役立ちます。
- このコマンドを使用するには、まずプロジェクトの 1 つに切り替えて valet link app-name を実行します。これにより、Valet は現在の作業ディレクトリを指すシンボリック リンクを ~/.valet/Sites に作成します。
- link コマンドを実行すると、ブラウザーの http://app-name.dev からアクセスできます。
すべてのリンク ディレクトリを表示するには、valet links コマンドを実行します。 valet unlink app-name を使用してシンボリック リンクを削除することもできます。
4. サイトの共有
Valet には、ローカル サイトを他のユーザーと共有するコマンドも用意されており、これは追加のツールなしで実行できます。
サイトを共有するには、サイトが存在するディレクトリに移動してバレット共有を実行します。これにより、一般にアクセス可能な URL が生成され、クリップボードに挿入されるので、ブラウザのアドレス バーに直接コピーできます。それはとても簡単です。
サイトの共有を停止するには、Ctrl + C を使用します。
5. ログの表示
ターミナル内のすべてのサイトのログを表示したい場合は、valet logs コマンドを実行すると、新しいログが表示されます。端末。
6. カスタム Valet ドライバー
カスタム Valet ドライバーを作成して、Valet でネイティブにサポートされていない PHP アプリケーションにサービスを提供することもできます。 Valet をインストールすると、~/.valet/Drivers ディレクトリが作成されます。このディレクトリには、SampleValetDriver.php ファイルが含まれています。このファイルには、カスタム ドライバーの作成方法を示すサンプルが含まれています。ドライバーを作成するには、servers、isStaticFile、frontControllerPath の 3 つのメソッドを実装するだけで済みます。
これら 3 つのメソッドは、$sitePath、$siteName、$uri の値をパラメーターとして受け取ります。ここで、$sitePath は /Users/Lisa/Sites/my-project などのサイト ディレクトリを表し、$siteName はメインのドメイン名の部分 (my-project など)、$uri は入力されたリクエスト アドレス (/foo/bar など) です。
カスタム Valet ドライバーを作成した後、それを ~/.valet/Drivers ディレクトリに配置し、FrameworkValetDriver.php の命名方法に従います。たとえば、WordPress Valet ドライバー用のカスタム Valet ドライバーを作成する場合は、次のようになります。対応するファイル名は WordPressValetDriver.php です。
Valet ドライバーをカスタマイズするために実装する必要がある 3 つの方法について説明し、実演してみましょう。
serves メソッド
カスタム ドライバーが入力リクエストの処理を続行する必要がある場合、serves メソッドは true を返し、それ以外の場合、メソッドは false を返します。したがって、このメソッドでは、指定された $sitePath にサービス タイプの項目が含まれているかどうかを判断する必要があります。
たとえば、WordPressValetDriver を作成していると仮定すると、対応する Serves メソッドは次のとおりです。
/** * Determine if the driver serves the request. * * @param string $sitePath * @param string $siteName * @param string $uri * @return void * @translator laravelacademy.org */public function serves($sitePath, $siteName, $uri){ return is_dir($sitePath.'/wp-admin');}
isStaticFile メソッド
isStaticFile メソッドは次のようになります。入力リクエストが画像ファイルやスタイル ファイルなどの静的ファイルであるかどうかを判断します。ファイルが静的ファイルの場合、このメソッドはディスク上のフル パスを返します。入力リクエストが静的ファイルに対するリクエストでない場合は、 return false:
/** * Determine if the incoming request is for a static file. * * @param string $sitePath * @param string $siteName * @param string $uri * @return string|false */public function isStaticFile($sitePath, $siteName, $uri){ if (file_exists($staticFilePath = $sitePath.'/public/'.$uri)) { return $staticFilePath; } return false;}
注: isStaticFile メソッドは、servers メソッドが true を返し、リクエスト URI が / ではない場合にのみ呼び出されます。
frontControllerPath メソッド
frontControllerPath メソッドは、フロント コントローラーのフル パス (通常は、index.php) を返します。
/** * Get the fully resolved path to the application's front controller. * * @param string $sitePath * @param string $siteName * @param string $uri * @return string */public function frontControllerPath($sitePath, $siteName, $uri){ return $sitePath.'/public/index.php';}
7. その他のバレーコマンド
命令 | 描述 |
---|---|
valet forget | 从”parked”目录运行该命令以便从parked目录列表中移除该目录 |
valet paths | 查看你的”parked”路径 |
valet restart | 重启Valet |
valet start | 启动Valet |
valet stop | 关闭Valet |
valet uninstall | 卸载Valet |

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。
