1. 程式人生 > 其它 >【Azure 應用服務】App Service For Linux 怎麼安裝Composer,怎麼安裝PHP擴充套件,怎麼來修改站點根路徑啟動程式?

【Azure 應用服務】App Service For Linux 怎麼安裝Composer,怎麼安裝PHP擴充套件,怎麼來修改站點根路徑啟動程式?

問題一:App Service 的預設啟動路徑為wwwroot,如何修改到到PHP程式碼執行目錄呢? 如Laravel的啟動目錄為public/?那如何修改呢?

App Service 的預設 PHP 映像使用 Apache,不允許為應用自定義站點根路徑。 若要避開此限制,請將 .htaccess 檔案新增到儲存庫根路徑,幷包含以下內容:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_URI} ^(.*)
    RewriteRule ^(.*)$ /public/$1 [NC,L,QSA]
</IfModule>

更多描述可參考:【Azure 應用服務】App Service For Linux 部署PHP Laravel 專案,如何修改首頁路徑為 wwwroot\public\index.php

問題二:如何通過SSH安裝composer

進入到webapp的SSH介面輸入以下命令:

但是由於重啟 WebApp後,或由於PaaS服務的性質,Host服務的例項發生切換,這些配置就會丟失。所以需要把這2條命令儲存到 Web App 的啟動命令中,如下圖:

問題三:怎麼安裝PHP擴充套件?

在應用的根目錄中新增bin目錄,並將.so擴充套件檔案放入其中(例如 mongodb.so)。 確保擴充套件與 Azure 中的 PHP 版本相容,並且與 VC9 和非執行緒安全 (nts) 相容。

部署所做的更改有:

  • /home/site中建立名為ini的目錄,然後使用要自定義的指令在/home/site/ini目錄中建立 .ini 檔案(例如 settings.ini)
  • 使用extensionzend_extension指令將擴充套件新增到自定義 .ini 檔案中。
extension=/home/site/wwwroot/bin/mongodb.so
zend_extension
=/home/site/wwwroot/bin/xdebug.so
  • 需要重啟應用才能使更改生效。

啟用 PHP 擴充套件https://docs.azure.cn/zh-cn/app-service/configure-language-php?pivots=platform-linux#enable-php-extensions

當在複雜的環境中面臨問題,格物之道需:濁而靜之徐清,安以動之徐生。 雲中,恰是如此!