虚拟主机怎么设置伪静态
虚拟主机怎么设置伪静态?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
虚拟主机提供商一般提供伪静态规则,不过我们也可以自行设置。这里虚拟主机区分Linux虚拟主机和Windows虚拟主机,两个系统下,伪静态的写法会有差异。另外网站所采用的系统也会给伪静态写法造成不同,比如CMS系统、WordPress系统等。下面我们来详细讲解下怎么设置虚拟主机伪静态。
一、帝国CMS伪静态设置技巧
帝国CMS建议直接生成静态页,但有时候也确实希望伪静态,这里以 帝国CMS7.0为例。PHP虚拟主机下设置伪静态:
1、确认空间支持伪静态,有些空间商的空间是需要手动开启伪静态功能的。
2、后台–系统–系统设置–伪静态参数设置,设置好伪静态规则。
3、新建 .htaccess 文件,放在网站根目录下。
.htaccess文件中写入如下规则:(注意规则文件中的规则要与后台设置的一致)
# 将 RewriteEngine 模式打开RewriteEngine On#信息内容页:showinfo-[!--classid--]-[!--id--]-[!--page--].htmlRewriteCond %{QUERY_STRING} ^(.*)$RewriteRule ^showinfo-(.+?)-(.+?)-(.+?)/.html$ /e/action/ShowInfo.php?classid=$1&id=$2&page=$3#信息列表:listinfo-[!--classid--]-[!--page--].htmlRewriteCond %{QUERY_STRING} ^(.*)$RewriteRule ^listinfo-(.+?)-(.+?)/.html$ /e/action/ListInfo/index.php?classid=$1&page=$2#标题分类列表页:infotype-[!--ttid--]-[!--page--].htmlRewriteCond %{QUERY_STRING} ^(.*)$RewriteRule ^infotype-(.+?)-(.+?)/.html$ /e/action/InfoType/index.php?ttid=$1&page=$2#TAGS信息列表页:tags-[!--tagname--]-[!--page--].htmlRewriteCond %{QUERY_STRING} ^(.*)$RewriteRule ^tags-(.+?)-(.+?)/.html$ /e/tags/index.php?tagname=$1&page=$2
二、WordPress伪静态设置规则
修改WordPress固定链接伪静态化后,网页却打不开,出现这种情况这是因为缺少伪静态规则。
WordPress固定链接伪静态化设置规则,是根据你主机环境来决定的,不需要插件,网上运行的wordpress无非IIS/Apache/Nginx这三种环境。
WordPress固定链接伪静态化设置技巧多种多样,需要对号入座。如果使用的是虚拟主机,大多数的IDC服务商,都支持wordpress伪静态,直接在后台修改固定链接设置即可。
1、Linux服务器环境
请确保你的根目录开启了777权限,已开启的话,在修改自定义固定链接后的瞬间,会在主机根目录自动生成一个.htaccess的文件,打开查看是否已生成规则,生成的话,就OK了,就不需要往下看了。
如果没有生成.htaccess,或者.htaccess里没有内容,那就需要手动创建一个txt文件,使用上传软件修改名为 .htaccess,粘贴Apache或Nginx规则代码,保存并上传到网站根目录就行了。
Apache规则
RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]
Nginx规则
location / {if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}if (!-f $request_filename){rewrite (.*) /index.php;}}
2、Windows主机IIS环境下伪静态规则
你使用的windows主机必须安装了装Rewrite 组件才能支持伪静态,咨询下你的云服务提供商所使用的主机是否支持伪静态,支持的话请继续往下看。
如果主机支持伪静态,在修改wordpress固定链接后无法伪静态,在根目录自动生成一个httpd.ini,没有生成的话,就创建一个txt文本,修改名字为httpd.ini,复制粘贴下边代码,保存上传到根目录。
[ISAPI_Rewrite]# Defend your computer from some worm attacks#RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O]# 3600 = 1 hourCacheClockRate 3600RepeatLimit 32# Protect httpd.ini and httpd.parse.errors files# from accessing through HTTP# Rules to ensure that normal content gets throughRewriteRule /tag/(.*) /index\.php\?tag=$1RewriteRule /software-files/(.*) /software-files/$1 [L]RewriteRule /images/(.*) /images/$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.phpRewriteRule ^/$ /index.php [L]RewriteRule /(.*) /index.php/$1 [L]
PS:
如果你不知道所使用的主机是什么系统,或使用的Linux或Windows系统的vps主机,不会配置伪静态规则,可以咨询你的云服务商,他们会帮助你实现wordpress伪静态,虽然设置了伪静态,只是展示的伪静态后缀,其实还是动态页面,如果想完全静态页面,可以安装WP Super Cache或者Hyper Cache插件,为全站生成静态页面缓存。
看完上述内容,你们掌握虚拟主机怎么设置伪静态的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。