他のすべての静的ファイルは、ドメインで通常どおり機能しています。App Engine YAMLファイルでスクリプトが実行されていない
PHPファイルが実行されていないようです。私はそれをスクリプトとして実行しようとしないときに(そして静的なファイルとしてアップロードするだけで)うまく動作します。 jQueryがそれを呼び出すときに平文を返すので、間違いなくファイルパスの問題ではありません。
しかし、いったんyamlにphpファイルとして登録し、jQueryが「hello、world! Firefoxのネットワークモニタで404が返され、コンソールに応答がありません。
App Engine Standard上で孤立しているサーバー側のPHPスクリプトを実行することに関して、私が見逃していることはありますか? (私のindex.htmlでのjQueryをロードした後に呼ばれる)
app.yamlを
runtime: php55
api_version: 1
threadsafe: true
handlers:
# Serve php scripts another way.
- url: /scripts/elastic.php
script: scripts/elastic.php
# Handle the main page by serving the index page.
# Note the $ to specify the end of the path, since app.yaml does prefix matching.
- url: /$
static_files: index.html
upload: index.html
# Handle folder urls by serving the index.html page inside.
- url: /(.*)/$
static_files: \1/index.html
upload: .*/index.html
# Handle nearly every other file by just serving it.
- url: /(.+)
static_files: \1
upload: (.*)
elastic.php
<?php
return 'Hello, world!'
?>
script.js
$(document).ready(function(){
$.get("./scripts/elastic.php", function(data) {
console.log(data);
});
});
あなたは100%正確です!何らかの理由で私は、最初のスクリプトハンドラがすべてのphpファイルを捕まえてから漏斗をさらに下げることができるようにカスケード接続すると考えました。私はあなたの答えがより多くの人々を助けることができるようにタイトルを調整しました。ありがとうBrett :) – Diz
少なくともURLマッチングのためにそのように動作するはずですが、私はアップロードプロセス中にファイルが上書きされたり、静的に再分類されていると思います。私はその行動についてのバグを開いて、それがどういうものなのかを見ていきます。これが起こる可能性があることをドキュメント内の人々に警告する必要があるかもしれません。 – BrettJ