ホームページ >バックエンド開発 >PHPチュートリアル >Laravel プロジェクトを Alibaba Cloud の ECS にデプロイする
Alibaba Cloud の ECS に Laravel プロジェクトをデプロイします
LEMP 環境を設定した後、最初に 2 つの重要なディレクトリを明確にする必要があります
Nginx のデフォルトのルート フォルダー
/usr/share/nginx/html
Nginx のサーバー設定ファイルが配置されているディレクトリ
/etc/nginx/sites-available/
ただ上記の 2 つのディレクトリを覚えておいてください。これらは非常に一般的に使用されるため、最初に配置しましょう
sudo mkdir -p /var/www
sudo vim /etc/nginx/sites-available/default
nginx を開きます ファイルを構成した後、次のようなサーバーセクションを見つけます
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/share/nginx/html; index index.html index.htm; server_name localhost; location / { try_files $uri $uri/ =404; }}
root、index、server_name、location の行を少し変更する必要があります
root の変更
root /var/www/laravel/public;
これはnginxサーバーのルートディレクトリです Laravelのパブリックフォルダーを指します 前に作成した/var/www/laravelディレクトリに後続のLaravelプロジェクトのコードを配置します
インデックスの変更
index index.php index.html index.htm;
何をここで注意する必要があるのは、上部の index.php を変更する
server_name を変更する
server_name server_domain_or_IP;
server_domain_or_IP をパブリック IP に変更する
location を変更する
location / { try_files $uri $uri/ /index.php?$query_string;}
変更後は次のようになります:
うわー最後に、「Nginx を設定する必要があります」があり、PHP ファイルを実行させます。また、このファイルの location の下に次の設定を追加します:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; }}
この部分は自分で追加したものであることに注意してください:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }}
設定後、Nginx を再起動して上記の設定項目を有効にします。
location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
(1) Composer を介して直接インストールします。CES で sudo service nginx restart
を実行すると、composer がインストールされます
Composer をグローバルに使用します:
cd ~curl -sS https://getcomposer.org/installer | php
その後、直接実行します。 /var/www ディレクトリ内
sudo mv composer.phar /usr/local/bin/composer
/var/www ディレクトリは前に作成したため、直接 cd /var/www してから上記のコマンドを実行できます。その後、インストールが完了するまで待ちます。
(2). コードを直接アップロードします次のコマンドを使用してアップロードします sudo composer create-project laravel/laravel laravel
次に、laravel を Alibaba Cloud の ECS の /var/www ディレクトリに移動します
scp -r laravel root@your_IP:(3)。
個人的には、コードを簡単に更新してロールバックできる git を使用することを好みます。バージョンが更新されてバグが発生した場合は、Git の強力なバージョン管理機能を使用してバグを修正できます。プロセスは大まかに次のとおりです: sudo mv laravel/ /var/www
git を使用したいので、まず ECS に git をインストールします:
本地代码---->Coding---->阿里云ECS
インストールが完了したら、git を使用できるようになり、Coding 上でプライベート プロジェクト laravel を作成します。 Laravelプロジェクトコードの要件。
ローカルコードがCodingにプッシュされたら、/var/wwwディレクトリで
sudo apt-get install git
your-project-git-linkを直接使用し、それをCodingのlaravelプロジェクトアドレスに置き換えます
4.
この方法でインストールされたコードの場合、/var/www/ は root ユーザーに属しており、Web サイトにアクセスするユーザーには適切な権限とアクセス制限が必要です。これは次のコマンドで実現できます。
git clone your-project-git-linkLaravel の公式ドキュメントによると、/var/www/laravel/app/storage ディレクトリは Web サイト ユーザーに書き込み権限を与える必要があります
sudo chown -R :www-data /var/www/laravel
ブラウザに次のように入力します:
sudo chmod -R 775 /var/www/laravel/app/storageこの時点で、 Alibaba Cloud にログインできます。ECS で Laravel を何気なく使用しています。