検索
ホームページバックエンド開発PHPチュートリアルCentOS7 での Laravel のデプロイと nginx での転送

この記事は、CentOS7 での Laravel のデプロイと nginx での転送の内容を紹介しています。これは、必要な友人に参照してもらうために共有します。

環境を実行するための PHP の構築

  • service php-fpm start を実行して php-fpm サービスを開始し、 ps aux | php-fpm サービスが正常にインストールされているかどうかを確認します。


    • 2 番目の解決策を使用してソースをインストールする場合は、次のスクリプトを使用してください

      yum install php72-php-cli.x86_64 php72-php-common.x86_64 php72-php-fpm.x86_64 php72-php-devel.x86_64 php72-php-gd.x86_64 php72-php-intl.x86_64 php72-php-mbstring.x86_64 php72-php-pecl-mcrypt.x86_64 php72-php-mysqlnd.x86_64 php72-php-opcache.x86_64 php72-php-pdo.x86_64 php72-php-pear.noarch php72-php-xml.x86_64 -y
    • php ソースがあります

    • 一部のユーザーがこれら 2 つのファイルにアクセスできない可能性もあります。この場合、代わりに次のメソッド (7.2) を使用できます。そのため、次のチュートリアルの一部は異なる可能性があります。

      yum install epel-release -y
      rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

    • php ソースは比較的古いことに注意してください


    • Determine php の yum ソースがあるかどうか: yum search php

    • システム自体には php の yum ソースが付属していますが、バージョンが古すぎてまだ 5.4 です。最新のソースをインストールするために、新しい yum ソースをインストールします。 。



      phpのyumソースをインストールします:

      rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
      rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

    • この時点でyum search phpを実行すると、より多くのオプションが見つかります

    • phpといくつかの関連プラグインをインストールします(php-cliはに関連しています) shell、php -commonは共通関数に関連し、php-develはコンパイルに関連し、php-fpmはサービスに関連し、php-gdは画像処理に関連し、php-intlは国際化に関連し、php-mbstringはに関連します複数文字列処理、php-mcrypt 暗号化に関連し、php-mysqlnd は mysql に関連し、php-opcache はパフォーマンスの高速化に関連し、php-pdo はデータ オブジェクトに関連し、php-pear は php アプリケーション拡張に関連し、 php-xml は xml に関連しています) (ここで php7.1 をインストールします) 最初の方法を使用する場合は、最初のスクリプトを使用してください:
    • yum インストール php71w-cli.x86_64 php71w-common.x86_64 php71w-fpm.x86_64 php71w-devel.x86_64 php71w-gd.x86_64 php71w-mbstring.x86_64 php71w-mcrypt.x86_6 4 _64 php71w-opcache .x86_64 php71w- pdo.x86_64 php71w-pear.noarch php71w-xml.x86_64 -y

    • php –version を実行して、php がインストールされ構成されているかどうかを確認します。スクリーンショットのようなバージョン情報が表示されたら、php 構成のインストールが完了したことを示します。 git/mysql/redis)


    • これらのサービスは基本的に、composer がない場合は、cd /tmp
    • curl –sShttps://getcomposer.org/installer を実行して、基本的な yum ソースにインストールできます。 | php
    • mvcomposer.phar/usr/local/bin/composer で Composer のインストールを完了できます


    • サービスコードの準備

    • PHP サービスのデプロイと更新を容易にするために、著者は以下を使用しますgit を使用してプロジェクトをダウンロードして更新します。

    サービスをデプロイするフォルダーを入力し、git clone git address (例: git clone root@www.temp.com:/git/php/markingphp) を実行します

  • PHP コードをダウンロードします


    • 現時点では、この方法で php-fpm を実行する場合、PHP プロジェクトの静的リソース nginx の管理を容易にするために、十分な権限がない可能性があります。作成者はプロジェクトの権限を nginx に変更し、 php-fpm のオペレーターの権限を nginx に変更しました。

  • phpとプロジェクト関連の設定

    • nginxエラーログ

    • サービス転送に失敗しました

    • mysqlを初期化しています
    • chown nginx:nginx -Rf フォルダー名 (例: chown nginx:nginx -Rf markingphp)

  • rpm -ql php17w-fpm.x86_64 を実行して、php-fpm のインストール アドレスを取得します


    • php-fpm のインストール アドレスを取得します

    • know/etc/php-fpm.d/www.conf は設定ファイルです


      php-fpm 設定ファイル
    • 更改user = apache与 group = pache 为 user = nginx group = nginx 如果有必要可以更改127.0.0.1:9000为想要的端口

    • 为了服务器信息安全及项目大小控制,git项目未上传项目配置与项目引用库,所以需要重新新建项目配置文件并配置

    • 项目结构

    • 配置文件

    • 运行 composer update -vvv 下载库

    • 下载库失败

    • 如果库下载失败,可能是库被墙的原因,更改composer.json添加国内源再运行即可。


    “repositories”: { 
       “packagist”: { 
          “type”: “composer”, 
          “url”: “https://packagist.phpcomposer.com” 
       } 
    }
    • 国内源

    • 再运行 php artisan serve 可测试当前项目库是否完整,出现如下说明项目库下载完成。

    • 尝试启动项目测试

    • 初始化项目mysql表(php artisan migrate:refresh)

    • 配置nginx以转发80端口服务到php-fpm的服务,
         

      server { 
          listen 80; 
          location / { 
             root /php/markingphp/public/; 
             index index.php index.html index.jsp; 
          } 
          location ~ .php{  
               root html;  
               fastcgi_pass 127.0.0.1:9000;  
               fastcgi_index index.php;  
               fastcgi_param SCRIPT_FILENAME
    document_root$fastcgi_script_name; 
              include fastcgi_params; 
         } 
       }
    • 运行curl localhost 判断服务是否正常转发。

    • 运行 vim /var/log/nginx/error.log 检查nginx的log会发现log提示权限不足,可是我们已经把文件权限付给了nginx。

    • 最终得知是因为selinux的缘故,此时只需运行 setenforce 0 即可关闭selinux(临时),再修改配置文件 /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,这样下次重启selinux依然是关闭的。再运行curl localhost 会发现服务已经可以正常服务了。


以上がCentOS7 での Laravel のデプロイと nginx での転送の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPコードの最適化:メモリの使用と実行時間の短縮PHPコードの最適化:メモリの使用と実行時間の短縮May 10, 2025 am 12:04 AM

TooptimizePHPcodeforreducedmemoryusageandexecutiontime,followthesesteps:1)Usereferencesinsteadofcopyinglargedatastructurestoreducememoryconsumption.2)LeveragePHP'sbuilt-infunctionslikearray_mapforfasterexecution.3)Implementcachingmechanisms,suchasAPC

PHPメール:ステップバイステップ送信ガイドPHPメール:ステップバイステップ送信ガイドMay 09, 2025 am 12:14 AM

PhpisusedForsedingEmailsDueToitsIttegration withServerMailServicesAndExternalSmtpproviders、自動化とMarketingCampaign.1)SetupYourphpenvironment withebeBironment witheBiserverandphp、保証

PHP経由で電子メールを送信する方法:例とコードPHP経由で電子メールを送信する方法:例とコードMay 09, 2025 am 12:13 AM

メールを送信する最良の方法は、PHPMailerライブラリを使用することです。 1)Mail()関数を使用することはシンプルですが信頼できないため、電子メールがスパムを入力するか、配信できない場合があります。 2)PHPMailerは、より良い制御と信頼性を提供し、HTMLメール、添付ファイル、SMTP認証をサポートします。 3)SMTP設定が正しく構成されていることを確認し、暗号化(StartTLSやSSL/TLSなど)を使用してセキュリティを強化します。 4)大量の電子メールについては、メールキューシステムを使用してパフォーマンスを最適化することを検討してください。

高度なPHPメール:カスタムヘッダーと機能高度なPHPメール:カスタムヘッダーと機能May 09, 2025 am 12:13 AM

customedersandaddadvancedfeaturesinphpemailentalitylivainability.1)customederadddetadata fortrackingandcategorization.2)htmLemailsallowStingtintintintintintinteractivity.3)添付物質の添付物質の添付

php&smtpでメールを送信するためのガイドphp&smtpでメールを送信するためのガイドMay 09, 2025 am 12:06 AM

PHPとSMTPを使用してメールを送信することは、PHPMailerライブラリを介して実現できます。 1)PHPMailerをインストールして構成する、2)SMTPサーバーの詳細を設定する、3)電子メールコンテンツを定義し、4)メールを送信してエラーを処理します。この方法を使用して、電子メールの信頼性とセキュリティを確保します。

PHPを使用して電子メールを送信する最良の方法は何ですか?PHPを使用して電子メールを送信する最良の方法は何ですか?May 08, 2025 am 12:21 AM

BestappRoachforseminginphpisusingthephpmailerlibrarydueToitsReliability、featurrichness、andeaseofuse.phpmailerSupportssmtpは、detairederorhandlingを提供します

PHPでの依存関係注射のベストプラクティスPHPでの依存関係注射のベストプラクティスMay 08, 2025 am 12:21 AM

依存関係注射(DI)を使用する理由は、コードのゆるい結合、テスト可能性、および保守性を促進するためです。 1)コンストラクターを使用して依存関係を注入します。2)サービスロケーターの使用を避け、3)依存関係噴射コンテナを使用して依存関係を管理する、4)依存関係を注入することでテスト可能性を向上させる、5)注入依存性を回避、6)パフォーマンスに対するDIの影響を考慮します。

PHPパフォーマンスのチューニングのヒントとコツPHPパフォーマンスのチューニングのヒントとコツMay 08, 2025 am 12:20 AM

phpperformancetuningisucial cuseenhancess andandandadsand。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン