谷歌GAE,即Google App Engine,是谷歌公司旗下了一个云空间,这个空间一直提供着免费配额的服务,在国内的知晓度几乎没有哪个免费空间可以比肩,网上关于GAE空间教程非常多,用GAE搭建的博客、相册、网盘、论坛等都有不少。
GAE云空间自运行以来就不支持PHP,这不得不说对PHPer来说是一个硬伤,记得几年前还有人用程序在GAE上模拟了PHP运行环境,看得出不少人对GAE运行PHP的渴望。终于到了2013年5月,谷歌已经宣布Google App Engine开始支持PHP运行了。
目前GAE免费云空间运行PHP还没有全面开放使用,想要使用的朋友可以参考谷歌GAE空间支持运行PHP来申请使用,部落已经在前几天收到了GAE发来的GAE运行PHP审核通过的消息,前一天还看到有朋友在部落论坛上发了自己申请成功了GAE PHP。
这里还不得不吐槽一下差不多与GAE PHP同时申请的中国版Windows Azure,至今都没有看到有人被审核通过使用的消息,只是在邮箱中收到一个申请已经受理的提醒。所以想要使用微软的“正宗”产品,还是去直接使用Windows Azure国际版吧。
本篇文章将分享如何成功在GAE空间上安装Wordpress博客,包括创建Cloud SQL数据库,修改Wordpress配置文件,上传文件到GAE空间上和绑定自己的域名到GAE上,并最终实现GAE安装Wordpress在国内的正常访问。
很多人对一些国外的大公司推出的免费空间情有独钟,除了好用、限制少以外,长久免费、稳定等特点这应该是最重要的原因,这里有一些优秀的免费PHP空间产品:
- 1、GCE VPS:Google Compute Engine云服务器激活开通和使用图文教程
- 2、微软云平台:Windows Azure微软免费云空间成功申请和使用教程:安装WP博客
- 3、开源红帽:OpenShift推出收费业务和解决OpenShift空间打不开和SSH无法连接
谷歌GAE安装Wordpress:创建Cloud SQL上传文件和绑定域名
1、GAE官网:
- 1、官网首页:https://appengine.google.com/
- 2、控制平台:https://cloud.google.com/console
- 3、GAE PHP申请:谷歌GAE空间支持运行PHP
2、第一次用GAE的朋友,参考:Google App Engine注册绑域名安装博客程序和GAE应用安装和使用教程,这两篇文章对了解本文的操作过程很有帮助。
3、下载App Engine PHP SDK,这个是用来上传PHP文件的。这里是App Engine PHP SDK下载地址。将其解压放在C盘中。
4、GAE运行Wordpress需要用到Cloud SQL,你需要进入“控制平台”去激活Cloud SQL,激活前还需要在控制平台里添加一张信用卡。
5、这个和在GCE中创建VPS是一样的,经过部落测试可以用财付通美国运通卡通过验证。
6、然后是新建一个Cloud SQL。
7、填写一个应用ID即可,例如:freehao123,再点击右边的“确认”就可以创建一个Cloud SQL了。(点击放大)
8、如果不想用Cloud SQL,我们还可以用远程MysqL数据库来帮助Wordpress运行在GAE上。
1、在C盘中新建一个文件夹命名为:freehao123,在文件夹中新建一个文件:app.yaml,复制粘贴以下内容保存。
application: myfreehao123
version: wp
runtime: php
api_version: 1
handlers:
- url: /(.*\.(htm$|html$|css$|js$))
static_files: wordpress/\1
upload: wordpress/(.*\.(htm$|html$|css$|js$))
- url: /wp-content/(.*\.(ico$|jpg$|png$|gif$))
static_files: wordpress/wp-content/\1
upload: wordpress/wp-content/(.*\.(ico$|jpg$|png$|gif$))
- url: /(.*\.(ico$|jpg$|png$|gif$))
static_files: wordpress/\1
upload: wordpress/(.*\.(ico$|jpg$|png$|gif$))
- url: /wp-admin/(.+)
script: wordpress/wp-admin/\1
secure: always
- url: /wp-admin/
script: wordpress/wp-admin/index.php
secure: always
- url: /wp-login.php
script: wordpress/wp-login.php
secure: always
- url: /wp-cron.php
script: wordpress/wp-cron.php
login: admin
- url: /xmlrpc.php
script: wordpress/xmlrpc.php
- url: /(.+)?/?
script: wordpress/index.php
2、记得要将第一行的application名称改成自己的。
3、再新建一个php.ini文件,复制粘贴以下内容:
google_app_engine.enable_functions = "php_sapi_name, gc_enabled"
4、最后新建一个cron.yaml文件,复制以下内容:
cron:
- description: wordpress cron tasks
url: /wp-cron.php
schedule: every 2 hours
1、下载最新版本的Wordpress到本地,这里是WordPress最新中文版下载地址。
2、将下载下来的Wordpress压缩包解压,会得到一个Wordpress文件夹,将这个文件夹移动到刚刚创建好的freehao123文件夹中,请看我的:
3、进入Wordpress文件夹中,将wp-config-sample.php重命名为wp-config.php,请把数据库名称、用户名、密码、主机这四项替换成以下内容。
/** WordPress 数据库的名称 */
define('DB_NAME', 'wordpress_db');
/** MySQL 数据库用户名 */
define('DB_USER', 'wp_user');
/** MySQL 数据库密码 */
define('DB_PASSWORD', 'wp_password');
/** MySQL 主机 */
if(isset($_SERVER['SERVER_SOFTWARE']) && strpos($_SERVER['SERVER_SOFTWARE'],'Google App Engine') !== false) {
define('DB_HOST', ':/cloudsql/myfreehao123:freehao123');
}else{
define('DB_HOST', 'localhost');
}
4、注意:myfreehao123:freehao123中mfreehao123是我应用名称,freehao123是我创建Cloud SQL名称。
1、上面我们已经创建了一个Cloud SQL,我们需要在Cloud SQL中创建数据库名称、用户名、密码。
2、最简单的在Cloud SQL中创建数据库信息是Google提供的Import功能,官方已经有了SQL文件:http://storage.googleapis.com/appengine-php/setup.sql
3、在Cloud Storage Path中填入gs://appengine-php/setup.sql,点击OK,我们的MysqL数据库就创建完成了。
1、App Engine PHP SDK下载解压后放在C盘中,freehao123文件夹也是放在C盘中,打开运行命令,执行以下命令:
cd google_appengine
appcfg.py update -R C:\freehao123/
2、C:\freehao123/是你存放在应用文件的绝对路径,你如果是放在别的地方,请自行修改,运行命令后会要求输入GAE账号和密码。
3、如果你的Google账号设置了两步验证,会出现如下错误:
Use an application-specific password instead of your regular account password.
See http://www.google.com/support/accounts/bin/answer.py?answer=185833
However, now the recommended way to log in is using OAuth2. See
https://developers.google.com/appengine/docs/python/tools/uploadinganapp#oauth
4、到Google两步验证中新建一个应用的专用密码即可。
5、稍等一会儿,文件即会全部上传到GAE空间上,如果你连接不了GAE空间服务器,请挂上D理。
6、进入GAE给你的二级域名,需要挂上D理,就可以在GAE安装运行Wordpress了。
1、GAE空间用默认的二级域名是在国内无法访问的,但是我们用自己的域名绑定到GAE上就可以正常访问了,而且速度还非常快。
PS:2013年6月28日更新,最新的GAE空间绑定自己的域名方法请参考:新的GAE空间绑定域名方法:添加自定义域名作DNS解析
2、在Application Settings 中有域名设置,点击可以添加自己的域名。
3、要想成功将域名绑定在GAE上,该域名必须是已经使用了Google Apps,没有的请在右边注册添加。
4、更加详细的绑定域名方法参考:这是我在GAE上绑定的自定义域名。
七、GAE安装Wordpress小结
1、其实在GAE上安装Wordpress整个过程说起来会比较繁琐,这里部落将自己的配置的Wordpress文件打包给大家:WordPress For GAE下载。
2、下载wordpress for gae压缩包下载下来,解压里面有freehao123文件夹,你需要修改的是app.yaml中的application名称、wp-config.php中的myfreehao123:freehao123。
3、将这两项替换成你自己的,然后再将整个文件夹上传到你的GAE空间中,就可以直接进入到第五步的GAE安装Wordpress了,整个过程就变得简单多了。
4、GAE空间安装运行Wordpress并绑定域名演示:http://gae.freehao123.info/,这是谷歌官方自己搭建的:http://gaeforphp-blog.appspot.com/