虚拟主机伪静态怎么设置?虚拟主机提供商一般提供伪静态规则,不过我们也可以自行设置。这里虚拟主机区分Linux虚拟主机和Windows虚拟主机,两个系统下,伪静态的写法会有差异。另外网站所采用的系统也会给伪静态写法造成不同,比如CMS系统、WordPress系统等。下面我们来详细讲解下怎么设置虚拟主机伪静态。
一、帝国CMS伪静态设置技巧
帝国CMS建议直接生成静态页,但有时候也确实希望伪静态,这里以 帝国CMS7.0为例。PHP虚拟主机下设置伪静态:
1、确认空间支持伪静态,有些空间商的空间是需要手动开启伪静态功能的。
2、后台–系统–系统设置–伪静态参数设置,设置好伪静态规则。
3、新建 .htaccess 文件,放在网站根目录下。
.htaccess文件中写入如下规则:(注意规则文件中的规则要与后台设置的一致)
# 将 RewriteEngine 模式打开 RewriteEngine On #信息内容页:showinfo-[!--classid--]-[!--id--]-[!--page--] RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^showinfo-(.+?)-(.+?)-(.+?)/$ /ShowInfo.php?classid=$1&id=$2&page=$3 #信息列表:listinfo-[!--classid--]-[!--page--] RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^listinfo-(.+?)-(.+?)/$ /index.php?classid=$1&page=$2 #标题分类列表页:infotype-[!--ttid--]-[!--page--] RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^infotype-(.+?)-(.+?)/$ /index.php?ttid=$1&page=$2 #TAGS信息列表页:tags-[!--tagname--]-[!--page--] RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^tags-(.+?)-(.+?)/$ /index.php?tagname=$1&page=$2
二、WordPress伪静态设置规则
修改WordPress固定链接伪静态化后,网页却打不开,出现这种情况这是因为缺少伪静态规则。
WordPress固定链接伪静态化设置规则,是依据你主机环境来决定的,不需要插件,网上运行的wordpress无非/Nginx这三种环境。
WordPress固定链接伪静态化设置技巧多种多样化,需要对号入座。如果使用的是虚拟主机,大多数的IDC服务商,都支持wordpress伪静态,直接在后台修改固定链接设置就可以。
1、Linux服务器环境
请保证你的根目录开启了777权限,已开启的话,在修改自定义固定链接后的瞬间,会在主机根目录自动生成一个.htaccess的文件,打开查看是否已生成规则,生成的话,就OK了,就不需要往下看了。
如果没有生成.htaccess,或者.htaccess里没有内容,那就需要手动创建一个txt文件,使用上传软件修改名为 .htaccess,粘贴Apache或Nginx规则代码,保存并上传到网站根目录就行了。
Apache规则
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
Nginx规则
location / { if (-f $){ rewrite (.*) $ break; } if (-f $/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; } }
2、Windows主机IIS环境下伪静态规则
你使用的windows主机必须安装了装Rewrite 组件才能支持伪静态,咨询下你的云服务提供商所使用的主机是否支持伪静态,支持的话请继续往下看。
如果主机支持伪静态,在修改wordpress固定链接后无法伪静态,在根目录自动生成一个,没有生成的话,就创建一个txt文本,修改名字为,复制粘贴下边代码,保存上传到根目录。
[ISAPI_Rewrite] # Defend your computer from some worm attacks #RewriteRule .*(?:global.asa|default.ida|root.exe|..).* . [F,I,O] # 3600 = 1 hour CacheClockRate 3600 RepeatLimit 32 # Protect and files # from accessing through # Rules to ensure that normal content gets through RewriteRule /(.*) /index.php?tag=$1 RewriteRule /(.*) /$1 [L] RewriteRule /(.*) /$1 [L] RewriteRule /sitemap.xml /sitemap.xml [L] RewriteRule /favicon.ico /favicon.ico [L] # For file-based wordpress content (i.e. theme), admin, etc. RewriteRule /wp-(.*) /wp-$1 [L] # For normal wordpress content, via index.php RewriteRule ^/$ /index.php [L] RewriteRule /(.*) /$1 [L]
PS:
如果你不知道所使用的主机是什么系统,或使用的Linux或Windows系统的vps主机,不会配置伪静态规则,可以咨询你的云服务商,他们会帮助你实现wordpress伪静态,虽然设置了伪静态,只是展示的伪静态后缀,其实还是动态页面,如果想完全静态页面,可以安装WP Super Cache或者Hyper Cache插件,为全站生成静态页面缓存。
以上是虚拟主机伪静态怎么设置的详细说明,如果还有疑问,可以到融亿云咨询技术客服,会帮您设置匹配的伪静态规则,融亿云虚拟主机入口: