我刚刚部署了一个应用程序引擎应用程序与phpMyAdmin连接到云SQL数据库。当我使用它的时候,一切都很好。
我想分享这个应用程序给我的学生,但我不知道如何让他们访问https资源。https://-dot-.ue.r.appspot.com/index.php我尝试了以下操作:
禁用IAP:学生看到"您的客户端没有权限获取URL/">
启用IAP与allUsers: Viewer:学生看到一个页面"你没有权限…联系administrator"
使用"allAuthenticated User Viewer":相同的错误
使用"IAP安全Web应用用户"启用IAP;role: Same Error
我真的不知道该给谁权限。我以为默认情况下我的应用引擎对所有谷歌用户都是可用的?
我错过了什么?
谢谢!
应用程序。yaml:
service: phpmyadmin
runtime: php55
api_version: 1
handlers:
- url: /(.+.(ico|jpg|png|gif))$
static_files: 1
upload: (.+.(ico|jpg|png|gif))$
application_readable: true
- url: /(.+.(htm|html|css|js))$
static_files: 1
upload: (.+.(htm|html|css|js))$
application_readable: true
- url: /(.+.php)$
script: 1
login: admin
- url: /.*
script: index.php
login: admin
config.inc.php:
<?php
$cfg['blowfish_secret'] = '<my-secret>'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/*
* Servers configuration
*/
$i = 0;
// Change this to use the project and instance that you've created.
$host = '/cloudsql/<my-app>:europe-west1:<my-db>';
$type = 'socket';
/*
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['socket'] = $host;
$cfg['Servers'][$i]['connect_type'] = $type;
$cfg['Servers'][$i]['compress'] = false;
/* Select mysql if your server does not have mysqli */
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
/*
* End of servers configuration
*/
$cfg['TempDir'] = "/tmp/";
/*
* Directories for saving/loading files from server
*/
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
/*
* Other settings
*/
$cfg['PmaNoRelation_DisableWarning'] = true;
$cfg['ExecTimeLimit'] = 60;
$cfg['CheckConfigurationPermissions'] = false;
查看您共享的文件后,我注意到以下内容:
关于app.yaml, login选项决定URL处理程序是否要求用户登录。当登录设置为"admin"时;用户需要登录,且用户必须是管理员级别的用户。您可以完全删除登录或将登录设置为"可选"。"optional"选项不要求用户登录才能访问URL。
另一方面,对于config.inc.php文件,这可能是由phpMyAdmin部署引起的。因此,请更改这些行
$cfg['blowfish_secret'] = ' <我的秘密比;">
$ cfg["服务器"][$ i] [' auth_type '] ="饼干";
到以下:
$ cfg [' blowfish_secret '] = ";
$ cfg["服务器"][$ i] [' auth_type '] ="http";
一旦文件被更改并保存,请继续使用gcloud命令"gcloud app deploy——version=new"重新部署你的phpMyAdmin,然后再尝试访问。