本程序默认支持apache伪静态,后台Generate .htaccess功能可以一键生成apache伪静态规则。
截取代码如下:
Options +SymLinksIfOwnerMatch -MultiViews <IfModule mod_rewrite.c> RewriteEngine On #If your website is installed in a subfolder, change the line below to reflect the path to the subfolder. #e.g. for http://www.example.com/subdomain1/subdomain2/ make it RewriteBase /subdomain1/subdomain2 RewriteBase / #If you wish to use a custom 404 page, place a file named 404.php in your website's root and uncomment the line below. #If your website is installed in a subfolder, change the line below to reflect the path to the subfolder. #e.g. for http://www.example.com/subdomain1/subdomain2/ make it ErrorDocument 404 /subdomain1/subdomain2/404.php #ErrorDocument 404 /404.php #If your site begins with 'www', uncomment the following two lines #RewriteCond %{HTTP_HOST} !^www\. #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] #DO NOT EDIT BELOW THIS RewriteRule ^index.php$ "" [R=301,L,QSA] RewriteCond %{REQUEST_FILENAME} -d [OR] RewriteCond %{REQUEST_FILENAME} -f RewriteRule . - [L] #tutorial.php RewriteRule ^tutorial$ "$0/" [R=301,L,QSA] RewriteRule ^tutorial/$ tutorial.php [L,QSA] RewriteRule ^tutorial/.*?([^\.\/]*)\.html$ tutorial.php?pname=$1 [L,QSA] RewriteRule ^tutorial/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ tutorial.php?d=$1$2$3 [L,QSA] RewriteRule ^tutorial/[^\.]*?([^/\.]*)/$ tutorial.php?fname=$1 [L,QSA] RewriteRule ^tutorial/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #search.php RewriteRule ^search$ "$0/" [R=301,L,QSA] RewriteRule ^search/$ search.php [L,QSA] RewriteRule ^search/.*?([^\.\/]*)\.html$ search.php?pname=$1 [L,QSA] RewriteRule ^search/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ search.php?d=$1$2$3 [L,QSA] RewriteRule ^search/[^\.]*?([^/\.]*)/$ search.php?fname=$1 [L,QSA] RewriteRule ^search/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #plugins.php RewriteRule ^plugins$ "$0/" [R=301,L,QSA] RewriteRule ^plugins/$ plugins.php [L,QSA] RewriteRule ^plugins/.*?([^\.\/]*)\.html$ plugins.php?pname=$1 [L,QSA] RewriteRule ^plugins/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ plugins.php?d=$1$2$3 [L,QSA] RewriteRule ^plugins/[^\.]*?([^/\.]*)/$ plugins.php?fname=$1 [L,QSA] RewriteRule ^plugins/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #globals.php RewriteRule ^globals$ "$0/" [R=301,L,QSA] RewriteRule ^globals/$ globals.php [L,QSA] RewriteRule ^globals/.*?([^\.\/]*)\.html$ globals.php?pname=$1 [L,QSA] RewriteRule ^globals/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ globals.php?d=$1$2$3 [L,QSA] RewriteRule ^globals/[^\.]*?([^/\.]*)/$ globals.php?fname=$1 [L,QSA] RewriteRule ^globals/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #django.php RewriteRule ^django$ "$0/" [R=301,L,QSA] RewriteRule ^django/$ django.php [L,QSA] RewriteRule ^django/.*?([^\.\/]*)\.html$ django.php?pname=$1 [L,QSA] RewriteRule ^django/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ django.php?d=$1$2$3 [L,QSA] RewriteRule ^django/[^\.]*?([^/\.]*)/$ django.php?fname=$1 [L,QSA] RewriteRule ^django/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #couchcms.php RewriteRule ^couchcms$ "$0/" [R=301,L,QSA] RewriteRule ^couchcms/$ couchcms.php [L,QSA] RewriteRule ^couchcms/.*?([^\.\/]*)\.html$ couchcms.php?pname=$1 [L,QSA] RewriteRule ^couchcms/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ couchcms.php?d=$1$2$3 [L,QSA] RewriteRule ^couchcms/[^\.]*?([^/\.]*)/$ couchcms.php?fname=$1 [L,QSA] RewriteRule ^couchcms/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #component.php RewriteRule ^component$ "$0/" [R=301,L,QSA] RewriteRule ^component/$ component.php [L,QSA] RewriteRule ^component/.*?([^\.\/]*)\.html$ component.php?pname=$1 [L,QSA] RewriteRule ^component/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ component.php?d=$1$2$3 [L,QSA] RewriteRule ^component/[^\.]*?([^/\.]*)/$ component.php?fname=$1 [L,QSA] RewriteRule ^component/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #article.php RewriteRule ^article$ "$0/" [R=301,L,QSA] RewriteRule ^article/$ article.php [L,QSA] RewriteRule ^article/.*?([^\.\/]*)\.html$ article.php?pname=$1 [L,QSA] RewriteRule ^article/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ article.php?d=$1$2$3 [L,QSA] RewriteRule ^article/[^\.]*?([^/\.]*)/$ article.php?fname=$1 [L,QSA] RewriteRule ^article/[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] #index.php RewriteRule ^.*?([^\.\/]*)\.html$ ?pname=$1 [L,QSA] RewriteRule ^([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$ ?d=$1$2$3 [L,QSA] RewriteRule ^[^\.]*?([^/\.]*)/$ ?fname=$1 [L,QSA] RewriteRule ^\w[^\.]*?([^/\.]*)$ "$0/" [R=301,L,QSA] </IfModule>
在Nginx服务器下,变更如下,如果其他栏目请参照此写法。
location / { # existing rules ###### Couch templates start ##### if (!-e $request_filename) { #solution.php rewrite ^/solution$ /solution/ permanent; rewrite ^/solution/$ /solution.php last; rewrite ^/solution/.*?([^\.\/]*)\.html$ /solution.php?pname=$1 last; rewrite "^/solution/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /solution.php?d=$1$2$3 last; rewrite ^/solution/[^\.]*?([^/\.]*)/?$ /solution.php?fname=$1 last; #product.php rewrite ^/product$ /product/ permanent; rewrite ^/product/$ /product.php last; rewrite ^/product/.*?([^\.\/]*)\.html$ /product.php?pname=$1 last; rewrite "^/product/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /product.php?d=$1$2$3 last; rewrite ^/product/[^\.]*?([^/\.]*)/?$ /product.php?fname=$1 last; #news.php rewrite ^/news$ /news/ permanent; rewrite ^/news/$ /news.php last; rewrite ^/news/.*?([^\.\/]*)\.html$ /news.php?pname=$1 last; rewrite "^/news/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /news.php?d=$1$2$3 last; rewrite ^/news/[^\.]*?([^/\.]*)/?$ /news.php?fname=$1 last; #globals.php rewrite ^/globals$ /globals/ permanent; rewrite ^/globals/$ /globals.php last; rewrite ^/globals/.*?([^\.\/]*)\.html$ /globals.php?pname=$1 last; rewrite "^/globals/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /globals.php?d=$1$2$3 last; rewrite ^/globals/[^\.]*?([^/\.]*)/?$ /globals.php?fname=$1 last; #contact.php rewrite ^/contact$ /contact/ permanent; rewrite ^/contact/$ /contact.php last; rewrite ^/contact/.*?([^\.\/]*)\.html$ /contact.php?pname=$1 last; rewrite "^/contact/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /contact.php?d=$1$2$3 last; rewrite ^/contact/[^\.]*?([^/\.]*)/?$ /contact.php?fname=$1 last; #blog.php rewrite ^/blog$ /blog/ permanent; rewrite ^/blog/$ /blog.php last; rewrite ^/blog/.*?([^\.\/]*)\.html$ /blog.php?pname=$1 last; rewrite "^/blog/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /blog.php?d=$1$2$3 last; rewrite ^/blog/[^\.]*?([^/\.]*)/?$ /blog.php?fname=$1 last; #about.php rewrite ^/about$ /about/ permanent; rewrite ^/about/$ /about.php last; rewrite ^/about/.*?([^\.\/]*)\.html$ /about.php?pname=$1 last; rewrite "^/about/([1-2]\d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /about.php?d=$1$2$3 last; rewrite ^/about/[^\.]*?([^/\.]*)/?$ /about.php?fname=$1 last; #index.php rewrite ^/.*?([^\.\/]*).html$ /?pname=$1 last; rewrite "^/([1-2]d{3})/(?:(0[1-9]|1[0-2])/(?:(0[1-9]|1[0-9]|2[0-9]|3[0-1])/)?)?$" /?d=$1$2$3 last; rewrite ^/[^\.]*?([^/\.]*)/$ /?fname=$1 last; } ####End Couch templates ###### }