この記事は主にクラウドサーバーにLaravelをデプロイする方法を詳しく紹介しています。興味のある友人はそれを参照してください
私はしばらくPHPとLaravelを学習していましたが、すべてのコードが実行されていました。ローカルの 仮想ホスト だったので、Tencent Cloud に行って 1 か月間無料のクラウド ホストを申請し、プロジェクトをクラウド サーバーにデプロイしたいと思いました。
ここには落とし穴がかなりたくさんあるので、初めてサーバーに触れる初心者の私は混乱してしまうと言わざるを得ません。サーバーを設定した後、Laravel プロジェクトをデプロイするのはさらに手間がかかるため、Laravel プロジェクトをデプロイするプロセスを記録したいと思いました。
追記: Linux は本当に使えば使うほど楽しくなるシステムです。家に帰っても、デスクトップ コンピューターに Linux をインストールしてコードを入力する必要があります。
環境の紹介
オペレーティング システムの選択に関して、私は Linux ubuntu16.04 システムを選択し、Linux + Nginx + Mysql + PHP 環境である LNMP 環境を使用しました。
Apacheを削除します
sudo service apache2 stop update-rc.d -f apache2 remove sudo apt-get remove apache2
まず、これらの3つのコマンドを使用してApacehを削除し、次にパッケージリストを更新します
sudo apt-get update
1. Nginxをインストールします
sudo apt-get install nginx
Nginxをインストールした後、nginxを再起動します
sudo service nginx start
実行後、publicに入りますブラウザのクラウド サーバーによって IP が割り当てられ、nginx インターフェイスへようこそ
2 が表示されます。Mysql
sudo apt-get install mysql-server mysql-client
のインストール中に、通常と同じように、Mysql パスワードを設定するように求められます。パスワード 設定は同じです。1 回入力し、1 回確認します。パスワードの確認後、基本的にインストールには時間がかかります。試してみてください
mysql -u root -p
ログインに成功した場合、Mysql は正しくインストールされています。
3. PHPをインストールする
sudo apt-get install php5-fpm php5-cli php5-mcrypt
php5-fpm経由のみ、Nginx上でPHPが正常に動作するのでインストールします。
php5-mcrypt については、Laravel などの一部の PHP フレームワーク がこれに依存するため、これもインストールされます。
話は逸れますが、ここでの php5 については、デプロイ中に php7 を自分でインストールしました。試してみたい場合は、それを試すこともできます。
4. PHP を設定します
sudo vim /etc/php5/fpm/php.ini
PHP設定ファイルを開き、その前にあるコメントのセミコロンを削除し、その値を 0 に設定します
cgi.fix_pathinfo=0;
5. php5-mcrypt:
sudo php5enmod mcrypt
を有効にします6. php5-fpm:
sudo service php5-fpm restart
LEMP環境を設定した後、最初に2つの重要なディレクトリを明確にする必要があります
Nginxのデフォルトのルートフォルダー
/usr/share/nginx/html/usr/share/nginx/html
Nginx的服务器配置文件所在目录
/etc/nginx/sites-available/
上面两个目录记住就好,很常用,先摆出来
下面一步一步在云服务器上部署Laravel
1.创建网站的根目录
sudo mkdir -p /var/www
2.配置nginx服务器
sudo vim /etc/nginx/sites-available/default
打开nginx的配置文件之后,找到server这一块,大概是长这个样子的
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的public文件夹下,后续的Laravel项目的代码我们会放在我们之前创建的/var/www/laravel目录下
index修改
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; }
修改完是这样的:
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; } }
最后我们还需要配置一下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; } 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; } }
注意,最下面的location ~ .php$
/etc/nginx/sites-available/
覚えておいてください上記の 2 つのディレクトリで大丈夫です。非常に一般的に使用されているので、最初に説明しましょう
以下は、クラウド サーバー上での Laravel の段階的なデプロイです
1. ウェブサイトのルートディレクトリを作成します
sudo service nginx restart
2. nginx サーバーを設定します
cd ~ curl -sS getcomposer.org/installer | phpnginx 設定ファイルを開いたら、次のようなサーバーセクションを見つけます
sudo mv composer.phar /usr/local/bin/composerroot、index、server_name、locationの行を少し変更する必要があります
ルートの変更
sudo composer create-project laravel/laravel laravelここで、nginxサーバーのルートディレクトリをLaravelのパブリックフォルダーに指定します。前に作成した /var/www/laravel ディレクトリ
index の変更
scp -r laravel root@your_IP:ここで注意する必要があるのは、index.php を先頭に置くことです
sudo mv laravel/ /var/www🎜server_domain_or_IP をパブリック IP に変更します🎜🎜🎜場所の変更🎜🎜
sudo apt-get install git🎜 変更は次のようになります: 🎜
git clone your-project-git-link🎜最後に、PHP ファイルを実行するように Nginx を設定する必要があります。また、このファイルの location の下に次の設定を追加します: 🎜rrreee🎜 一番下の
location ~ .php$
は自分で追加したものであることに注意してください: 🎜🎜 設定が完了したら、Nginx を再起動して上記を使用します設定項目が有効になります。 🎜rrreee🎜🎜3. Laravel プロジェクトを作成します🎜🎜🎜nginx を設定した後、🎜Laravel🎜 プロジェクト コードを取得するにはどうすればよいですか?いくつかの方法があります: 🎜🎜 (1). Composer を直接インストールする 🎜🎜 サーバー上で 🎜rrreee🎜 を実行すると、グローバルに使用するために Composer 🎜🎜composer がインストールされます: 🎜rrreee🎜 。 var/www ディレクトリで直接実行します🎜rrreee🎜 /var/www ディレクトリを作成したので、直接 cd /var/www してから上記のコマンドを実行できます。その後、インストールが完了するまで待ちます。 🎜🎜🎜(2). コードを直接アップロードします🎜🎜🎜次のコマンドを使用してアップロードします🎜rrreee🎜その後、laravelをサーバー上の/var/wwwディレクトリに移動します🎜rrreee🎜🎜(3). Gitとコーディングプラットフォームを使用します🎜 🎜🎜 個人的には、コードを簡単に更新してロールバックできる git を使用することを好みます。バージョンが更新されてバグが発生すると、Git の強力なバージョン管理機能を使用してバグを修正できます。プロセスは大まかに次のようになります: 🎜🎜ローカルコード---->Github---->クラウドサーバー🎜🎜既然要使用git,那么先在云服务器上安装git:
sudo apt-get install git
安装完成就可以使用git了,然后在Github上创建一个私有项目laravel,里面包含所有该Laravel项目所需代码。
一旦本地代码都推送到Coding,然后在/var/www目录下直接使用
git clone your-project-git-link
your-project-git-link替换为你Github上的laravel项目地址
5.BINGO
在浏览器输入:server_domain_or_IP
至此,你可以在服务器上随意地用Laravel了,keep coding!
以上がLaravelをクラウドサーバーにデプロイするチュートリアルの例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。