差别
这里会显示出您选择的修订版和当前版本之间的差别。
— |
amh4.2:rewrite_sub [2017/05/26 15:44] (当前版本) root 创建 |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====子目录站点设置伪静态==== | ||
+ | 假如您的主站点和子站点是两个网站程序,而需要分别进行伪静态化。\\ | ||
+ | 例如:http://www.diahosting.com 和 http://www.diahosting.com/blog \\ | ||
+ | 请参考以下教程。 | ||
+ | |||
+ | 假设www.diahosting.com是zencart程序,http://www.diahosting.com/blog 是wordpress程序。\\ | ||
+ | |||
+ | 1: 首先我们要[[amh:rewrite_free|自行创建新conf文件]],以免与原conf冲突\\ | ||
+ | 2: 编辑新创建的conf文件,加入具体的伪静态规则,例如wordpress默认有提供一个wp2.conf,是用于子目录wordpress站点的,,可直接参考里面的规则。 | ||
+ | {{:amh:rewrite_sub_1.png?640|}} \\ 注意子目录站点的伪静态规则,要放在主站点之上,否则会出错。另,两者之间需要有location进行隔离。\\ | ||
+ | |||
+ | ==最后在 虚拟主机 => 对应的站点“编辑” => rewrite规则的下拉框中进行重新选择conf文件。== | ||
+ | \\ | ||
+ | 以下贴出此案例的完整伪静态规则示例 | ||
+ | <code>location /blog/ { | ||
+ | try_files $uri $uri/ /blog/index.php?$args; | ||
+ | } | ||
+ | |||
+ | # Add trailing slash to */wp-admin requests. | ||
+ | rewrite /wp-admin$ $scheme://$host$uri/ permanent; | ||
+ | |||
+ | |||
+ | location / { | ||
+ | |||
+ | if (-d $request_filename) { | ||
+ | break; | ||
+ | } | ||
+ | if (-f $request_filename) { | ||
+ | break; | ||
+ | } | ||
+ | |||
+ | #handle the new URL formats | ||
+ | rewrite ^/(.*)-c-([0-9_]+)/(.*)-p-([0-9]+)(.*)$ /index.php?main_page=product_info&products_id=$4&cPath=$2&$args last; | ||
+ | rewrite ^/(.*)-c-([0-9_]+)/(.*)-pi-([0-9]+)(.*)$ /index.php?main_page=popup_image&pID=$4&cPath=$2&$args last; | ||
+ | rewrite ^/(.*)-c-([0-9_]+)/(.*)-pr-([0-9]+)(.*)$ /index.php?main_page=product_reviews&products_id=$4&cPath=$2&$args last; | ||
+ | rewrite ^/(.*)-c-([0-9_]+)/(.*)-pri-([0-9]+)(.*)$ /index.php?main_page=product_reviews_info&products_id=$4&cPath=$2&$args last; | ||
+ | |||
+ | # From Ultimate SEO URLs | ||
+ | rewrite ^/(.*)-p-([0-9]+)(.*)$ /index.php?main_page=product_info&products_id=$2&$args last; | ||
+ | rewrite ^/(.*)-m-([0-9]+)(.*)$ /index.php?main_page=index&manufacturers_id=$2&$args last; | ||
+ | rewrite ^/(.*)-pi-([0-9]+)(.*)$ /index.php?main_page=popup_image&pID=$2&$args last; | ||
+ | rewrite ^/(.*)-pr-([0-9]+)(.*)$ /index.php?main_page=product_reviews&products_id=$2&$args last; | ||
+ | rewrite ^/(.*)-pri-([0-9]+)(.*)$ /index.php?main_page=product_reviews_info&products_id=$2&$args last; | ||
+ | rewrite ^/(.*)-ezp-([0-9]+)(.*)$ /index.php?main_page=page&id=$2&$args last; | ||
+ | rewrite ^/(.*)-c-([0-9_]+)(.*)$ /index.php?main_page=index&cPath=$2&$args last; | ||
+ | |||
+ | # For product tags | ||
+ | rewrite "^/producttags/([\w]+)/?" /index.php?main_page=producttags&letter=$1&% last; | ||
+ | rewrite "^/producttags/([\w]+)/([0-9]+).html" /index.php?main_page=producttags&letter=$1&page=$2&% last; | ||
+ | |||
+ | # For Open Operations Info Manager | ||
+ | rewrite "^/(.*)-i-([0-9]+).html" /index.php?main_page=info_manager&pages_id=$2&% last; | ||
+ | |||
+ | # For News & Articles Manager | ||
+ | rewrite "^/news/?" /index.php?main_page=news&% last; | ||
+ | rewrite "^/news/rss.xml" /index.php?main_page=news_rss&% last; | ||
+ | rewrite "^/news/archive/?" /index.php?main_page=news_archive&% last; | ||
+ | rewrite "^/news/([0-9]{4})-([0-9]{2})-([0-9]{2}).html" /index.php?main_page=news&date=$1-$2-$3&% last; | ||
+ | rewrite "^/news/archive/([0-9]{4})-([0-9]{2}).html" /index.php?main_page=news_archive&date=$1-$2&% last; | ||
+ | rewrite "^/news/(.*)-a-([0-9]+)-comments.html" /index.php?main_page=news_comments&article_id=$2&% last; | ||
+ | rewrite "^/news/(.*)-a-([0-9]+).html" /index.php?main_page=news_article&article_id=$2&% last; | ||
+ | |||
+ | rewrite "^(.*).html" /index.php?main_page=$1&% last; | ||
+ | rewrite ^/(.*)$ /index.php?main_page=$1&$args last; | ||
+ | } | ||
+ | </code> |
最后更改: in 2017/05/26 15:44