OpenShift空间默认是没有开启URL重写功能的,需要自己创建.htaccess文件来开启。
在你应用目录(/app-root/runtime/repo/php)下建立文件名“.htaccess” 。
以Discuz论坛为例,内容如下:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^topic-(.+)\.html$ portal.php?mod=topic&topic=$ 1&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^article-([ 0- 9]+)-([ 0- 9]+)\.html$ portal.php?mod=view&aid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^forum-(\w+)-([ 0- 9]+)\.html$ forum.php?mod=forumdisplay&fid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^thread-([ 0- 9]+)-([ 0- 9]+)-([ 0- 9]+)\.html$ forum.php?mod=viewthread&tid=$ 1&extra=page\%3D$ 3&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^group-([ 0- 9]+)-([ 0- 9]+)\.html$ forum.php?mod=group&fid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$ 1=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog-([ 0- 9]+)-([ 0- 9]+)\.html$ home.php?mod=space&uid=$ 1& do=blog&id=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^archiver/(fid|tid)-([ 0- 9]+)\.html$ archiver/index.php?action=$ 1&value=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteBase /
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^topic-(.+)\.html$ portal.php?mod=topic&topic=$ 1&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^article-([ 0- 9]+)-([ 0- 9]+)\.html$ portal.php?mod=view&aid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^forum-(\w+)-([ 0- 9]+)\.html$ forum.php?mod=forumdisplay&fid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^thread-([ 0- 9]+)-([ 0- 9]+)-([ 0- 9]+)\.html$ forum.php?mod=viewthread&tid=$ 1&extra=page\%3D$ 3&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^group-([ 0- 9]+)-([ 0- 9]+)\.html$ forum.php?mod=group&fid=$ 1&page=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$ 1=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog-([ 0- 9]+)-([ 0- 9]+)\.html$ home.php?mod=space&uid=$ 1& do=blog&id=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^archiver/(fid|tid)-([ 0- 9]+)\.html$ archiver/index.php?action=$ 1&value=$ 2&% 1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ plugin.php?id=$1:$2&%1
即可开启重写功能了。