为什么我的 twilio web 应用程序在 XAMPP 中工作但在 AZURE 中不工作
Why does my twilio web application work in XAMPP but not in AZURE
我在 php 中创建了一个应用程序,可以向使用 twilio api 的人发送文本。它在 XAMPP 中完美运行,但 php 代码在 Azure 中不 运行。每次调用它时,我都会收到一条错误消息,提示 "Failed to load resource: the server responded with a status of 500 (Internal Server Error)".
有没有一种方法可以解决这个问题而无需创建自己的虚拟服务器?
他们有很多可能:
您的 Azure 运行 PHP 在 ISS 服务器中,然后您需要 将您的 .htaccess 文件转换为 web.config ,简单,只需转到 IIS 中的网站并导入您的 .htaccess 文件,IIS 将在 web.config.
中转换您的 .htaccess
权限 你在 运行.
PHP 版本,检查 xampp 上的 PHP 版本并与 PHP 版本进行比较在 Azure 上。您的代码可以在 PHP Xampp 中兼容,但在 PHP Azure 中不兼容。
- Extensions PHP,有可能你的 xampp 有 PHP 的扩展,而你的 Azure 没有启用,比如 file_info,等等...
通常,当我们收到 500 响应时,这意味着我们在服务器脚本上遇到了一些错误。我们可以在 Azure Web 应用程序的 PHP 运行时中设置 display_errors=On
以便于故障排除。详见https://azure.microsoft.com/en-in/documentation/articles/web-sites-php-configure/#how-to-change-the-built-in-php-configurations。
并且您可以检查您在 Azure Web Apps 上的应用程序是否已成功安装 twilio 库。您可以利用 composer
在 composer.json
中配置 sdk,然后当您通过 Git 将应用程序部署到 Azure 时,Azure 服务将在 composer.json
文件中自动安装依赖项。部署任务。
您可以利用 require 'vendor/autoload.php'
加载所有依赖项。
第一次测试时,出现如下错误:
Fatal error: Uncaught exception Services_Twilio_TinyHttpException with message SSL certificate problem...
所以也可能是你这边的问题,你可以在Azure Web Apps的PHP中添加证书,详细步骤请参考https://blogs.msdn.microsoft.com/azureossds/2015/06/12/verify-peer-certificate-from-php-curl-for-azure-apps/
否则,您只需在 twilio 库中编辑 TinyHttp.php
:
添加 CURLOPT_SSL_VERIFYPEER => FALSE,在 $opts 数组。
同一问题请参考。
我在 php 中创建了一个应用程序,可以向使用 twilio api 的人发送文本。它在 XAMPP 中完美运行,但 php 代码在 Azure 中不 运行。每次调用它时,我都会收到一条错误消息,提示 "Failed to load resource: the server responded with a status of 500 (Internal Server Error)".
有没有一种方法可以解决这个问题而无需创建自己的虚拟服务器?
他们有很多可能:
您的 Azure 运行 PHP 在 ISS 服务器中,然后您需要 将您的 .htaccess 文件转换为 web.config ,简单,只需转到 IIS 中的网站并导入您的 .htaccess 文件,IIS 将在 web.config.
中转换您的 .htaccess
权限 你在 运行.
PHP 版本,检查 xampp 上的 PHP 版本并与 PHP 版本进行比较在 Azure 上。您的代码可以在 PHP Xampp 中兼容,但在 PHP Azure 中不兼容。
- Extensions PHP,有可能你的 xampp 有 PHP 的扩展,而你的 Azure 没有启用,比如 file_info,等等...
通常,当我们收到 500 响应时,这意味着我们在服务器脚本上遇到了一些错误。我们可以在 Azure Web 应用程序的 PHP 运行时中设置 display_errors=On
以便于故障排除。详见https://azure.microsoft.com/en-in/documentation/articles/web-sites-php-configure/#how-to-change-the-built-in-php-configurations。
并且您可以检查您在 Azure Web Apps 上的应用程序是否已成功安装 twilio 库。您可以利用 composer
在 composer.json
中配置 sdk,然后当您通过 Git 将应用程序部署到 Azure 时,Azure 服务将在 composer.json
文件中自动安装依赖项。部署任务。
您可以利用 require 'vendor/autoload.php'
加载所有依赖项。
第一次测试时,出现如下错误:
Fatal error: Uncaught exception Services_Twilio_TinyHttpException with message SSL certificate problem...
所以也可能是你这边的问题,你可以在Azure Web Apps的PHP中添加证书,详细步骤请参考https://blogs.msdn.microsoft.com/azureossds/2015/06/12/verify-peer-certificate-from-php-curl-for-azure-apps/
否则,您只需在 twilio 库中编辑 TinyHttp.php
:
添加 CURLOPT_SSL_VERIFYPEER => FALSE,在 $opts 数组。
同一问题请参考