方法:
首先看看config.yaml文件的默认格式:
[cc lang=”yaml”]
name: saetest
version: 1
handle:
your code
your rules
….
[/cc]
1.编辑config.yaml,在版本1下面添加以下几行
[cc lang=”yaml”]
handle:
– rewrite: if( !is_file() && !is_dir()) goto “index.php?%{QUERY_STRING}”
– errordoc: 404 /404.php
[/cc]
注意-符号前面有两个空格。
2.创建自己的404页面,比如404.php
3.通过Sina App Engine SDK将404.php上传到wordpress根目录即可
4.登陆wp后台 按照您的想法设置永久链接
说明:
1、sina云计算是架构在nginx上面的,所以不存在.htaccess文件.
2、- rewrite: if( !is_file() && !is_dir()) goto “index.php?%{QUERY_STRING}”
通过该行配置把非文件夹和文件的所有请求转发给WP 的index.php,WP根据后台设置的永久链接格式来分析并输出文件
3、- errordoc: 404 /404.php
设置404自定义错误指向404.php
4、- errordoc: 404 /404.php和- rewrite: if( !is_file() && !is_dir()) goto “index.php?%{QUERY_STRING}” 行前都应该有两个空格
转载自:http://xptt.com/wordpress-sae-set-version-of-the-permanent-link.html
附:
大家可以使用这个公益性质的404错误页面,帮助需要帮助的人。http://yibo.iyiyun.com/User/install/web404/
SAE的官方帮助和教程:http://sae.sina.com.cn/?m=devcenter&catId=193
一个更多功能的例子:
以下一共设置以下三条。错误页面等Wordpress已经处理好了。
[cc lang=”yaml”]
handle:
– rewrite: if( in_header[“Host”] !~ “foundpure.com” && path ~ “(.*)” ) goto “http://foundpure.com$1?%{QUERY_STRING}”
– rewrite: if( path ~ “(.*)archives(.*)” ) goto “http://foundpure.com$1post$2?%{QUERY_STRING}”
– rewrite: if (!is_file() && !is_dir() && path ~ “^/(.*)”) goto “index.php/$1?%{QUERY_STRING}”
[/cc]
接下来解释一下三条rewrite的意思。
第一个rewrite,为了SEO的统一,我把所有非foundpure.com的流量都指到foundpure.com,包括sinaapp的二级域名foundpure.sinaapp.com。
第二个rewrite, 某天我手贱吧文章的永久域名archieves/{postId}改成了post/{postId}导致原先被搜索引擎收录的记录都变成了404.所以又做了个指向
第三个rewrite最常见,url优化,去掉了index.php.
至此可以看到这都是同一个语句
[cc lang=”yaml”]
– rewrite condition goto ….
[/cc]
是的,那重定向和url rewritetc怎么区分?
AppConfig比较隐晦,文档也不清楚,摸索出来的。
如果goto带协议和域名如(http://foundpure.com) 就是重定向,所谓重定向就是浏览器的地址会变。否则就是url rewrite,浏览器显示的地址不变,但已经内容是新地址的内容。
Heya i’m for the first timе here. I came across this board
and I find It really useful & it helped me ouut much.
I Һope to give ѕomething back and aid others like you helpeԁ me.
Feel free to surf to my site; Mocheta Casa (http://Www.Mocheta-Parchet.Ro)