【问题标题】:Starting Google App Engine Web Server启动 Google App Engine 网络服务器
【发布时间】:2013-10-31 20:14:15
【问题描述】:

我正在阅读使用 PHP (https://developers.google.com/appengine/docs/php/gettingstarted/helloworld) 的 Google App Engine 的 helloworld 教程。在设置应用程序并准备就绪后,教程告诉我使用以下命令启动 Google App Engine SDK 中包含的 Web 服务器:google_appengine/dev_appserver.py --php_executable_path= helloworld/。我究竟如何启动 Web 服务器以及将该命令放在哪里?

【问题讨论】:

    标签: php google-app-engine


    【解决方案1】:

    在您的计算机上install the SDK 之后,您将拥有一个 google_appengine 目录。我运行 Windows,所以我的位于:

    C:\Program Files (x86)\Google\google_appengine

    在该目录中是一个名为“dev_appserver.py”的 Python 脚本,这是本教程希望您运行的。你的本地机器也应该安装了 PHP,并且脚本正在寻找它的位置,因为它是你自己安装的东西。

    您可以从操作系统的任何本地命令行应用程序(Linux 的 shell、Mac 的终端、Windows 的命令提示符或 Powershell)执行此脚本。

    我从存储 GAE 应用程序的上一层文件夹执行我的操作。为确保您可以正确执行此命令,请在不带参数的情况下运行它,您应该会看到:

    python "C:\Program Files (x86)\Google\google_appengine\dev_appserver.py"

    输出:

    usage: dev_appserver.py [-h] [--host HOST] [--port PORT]
                            [--admin_host ADMIN_HOST] [--admin_port ADMIN_PORT]
                            [--auth_domain AUTH_DOMAIN] [--storage_path PATH]
                            [--log_level {debug,info,warning,critical,error}]
                            [--max_module_instances MAX_MODULE_INSTANCES]
                            [--use_mtime_file_watcher [USE_MTIME_FILE_WATCHER]]
                            [--threadsafe_override THREADSAFE_OVERRIDE]
                            [--php_executable_path PATH]
                            [--php_remote_debugging [PHP_REMOTE_DEBUGGING]]
                            [--python_startup_script PYTHON_STARTUP_SCRIPT]
                            [--python_startup_args PYTHON_STARTUP_ARGS]
                            [--blobstore_path BLOBSTORE_PATH]
                            [--mysql_host MYSQL_HOST] [--mysql_port MYSQL_PORT]
                            [--mysql_user MYSQL_USER]
                            [--mysql_password MYSQL_PASSWORD]
                            [--mysql_socket MYSQL_SOCKET]
                            [--datastore_path DATASTORE_PATH]
                            [--clear_datastore [CLEAR_DATASTORE]]
                            [--datastore_consistency_policy {consistent,random,time}]
                            [--require_indexes [REQUIRE_INDEXES]]
                            [--auto_id_policy {sequential,scattered}]
                            [--logs_path LOGS_PATH]
                            [--show_mail_body [SHOW_MAIL_BODY]]
                            [--enable_sendmail [ENABLE_SENDMAIL]]
                            [--smtp_host SMTP_HOST] [--smtp_port SMTP_PORT]
                            [--smtp_user SMTP_USER]
                            [--smtp_password SMTP_PASSWORD]
                            [--prospective_search_path PROSPECTIVE_SEARCH_PATH]
                            [--clear_prospective_search [CLEAR_PROSPECTIVE_SEARCH]]
                            [--search_indexes_path SEARCH_INDEXES_PATH]
                            [--clear_search_indexes [CLEAR_SEARCH_INDEXES]]
                            [--enable_task_running [ENABLE_TASK_RUNNING]]
                            [--allow_skipped_files [ALLOW_SKIPPED_FILES]]
                            [--api_port API_PORT]
                            [--automatic_restart [AUTOMATIC_RESTART]]
                            [--dev_appserver_log_level {debug,info,warning,critical,error}]
                            [--skip_sdk_update_check [SKIP_SDK_UPDATE_CHECK]]
                            [--default_gcs_bucket_name DEFAULT_GCS_BUCKET_NAME]
                            yaml_files [yaml_files ...]
    dev_appserver.py: error: too few arguments
    

    我要让它正常工作的命令是:

    python "C:\Program Files (x86)\Google\google_appengine\dev_appserver.py" --port 8082 --admin_port 8083 --php_executable_path "C:\Program Files (x86)\NuSphere\PhpED\php54\php-cgi.exe" helloworld\
    

    我在 Powershell 中得到了这个输出,并且能够点击本地 url 并看到“Hellow,World!”

    INFO     2013-10-22 16:04:27,039 sdk_update_checker.py:245] Checking for updates to the SDK.
    INFO     2013-10-22 16:04:28,368 sdk_update_checker.py:261] Update check failed: HTTP Error 404: Not Found
    WARNING  2013-10-22 16:04:28,398 api_server.py:332] Could not initialize images API; you are likely missing the Python "PIL" module.
    INFO     2013-10-22 16:04:28,405 api_server.py:139] Starting API server at: http://localhost:52150
    INFO     2013-10-22 16:04:28,408 dispatcher.py:171] Starting module "default" running at: http://localhost:8082
    INFO     2013-10-22 16:04:28,411 admin_server.py:117] Starting admin server at: http://localhost:8083
    INFO     2013-10-22 16:04:31,980 module.py:608] default: "GET / HTTP/1.1" 200 13
    INFO     2013-10-22 16:04:32,223 module.py:608] default: "GET /favicon.ico HTTP/1.1" 200 13
    

    【讨论】:

      【解决方案2】:

      Google 云 SDK 附带一个启动器,您可以在其中添加项目文件并检查 GUI 中的日志。我在这里使用了 python 代码,但它的行为应该与 php 相同。

      转到 Google App Engine Launcher -> 选择文件 -> 添加现有应用程序 -> 浏览并选择 PHP/Python/Java/Go 应用程序的根目录 -> 添加 -> 单击运行按钮 -> 单击日志

      2014-12-30 01:02:57 Running command: "['C:\\Users\\gung13\\Anaconda\\pythonw.exe', 'C:\\Program Files\\Google\\Cloud SDK\\google-cloud-sdk\\platform\\google_appengine\\dev_appserver.py', '--skip_sdk_update_check=yes', '--port=9080', '--admin_port=8001', u'C:\\Users\\gung13\\Desktop\\appengine-try-python-flask']"
      INFO     2014-12-30 01:02:57,874 devappserver2.py:745] Skipping SDK update check.
      INFO     2014-12-30 01:02:57,903 api_server.py:172] Starting API server at: http://localhost:62234
      INFO     2014-12-30 01:02:57,905 dispatcher.py:186] Starting module "default" running at: http://localhost:9080
      INFO     2014-12-30 01:02:57,907 admin_server.py:118] Starting admin server at: http://localhost:8001
      INFO     2014-12-30 01:03:21,677 module.py:718] default: "GET / HTTP/1.1" 200 13
      INFO     2014-12-30 01:03:21,986 module.py:718] default: "GET /favicon.ico HTTP/1.1" 404 27
      

      【讨论】:

        猜你喜欢
        • 2011-02-15
        • 2017-11-12
        • 1970-01-01
        • 1970-01-01
        • 2012-10-11
        • 2010-09-27
        • 2014-10-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多