温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

虚拟主机怎么设置伪静态

发布时间:2020-10-12 15:45:28 来源:亿速云 阅读:212 作者:Leah 栏目:云计算

虚拟主机怎么设置伪静态?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

虚拟主机提供商一般提供伪静态规则,不过我们也可以自行设置。这里虚拟主机区分Linux虚拟主机和Windows虚拟主机,两个系统下,伪静态的写法会有差异。另外网站所采用的系统也会给伪静态写法造成不同,比如CMS系统、WordPress系统等。下面我们来详细讲解下怎么设置虚拟主机伪静态。

一、帝国CMS伪静态设置技巧

帝国CMS建议直接生成静态页,但有时候也确实希望伪静态,这里以 帝国CMS7.0为例。PHP虚拟主机下设置伪静态:

1、确认空间支持伪静态,有些空间商的空间是需要手动开启伪静态功能的。

2、后台–系统–系统设置–伪静态参数设置,设置好伪静态规则。

3、新建 .htaccess 文件,放在网站根目录下。

.htaccess文件中写入如下规则:(注意规则文件中的规则要与后台设置的一致)

# 将 RewriteEngine 模式打开
RewriteEngine On
#信息内容页:showinfo-[!--classid--]-[!--id--]-[!--page--].html
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^showinfo-(.+?)-(.+?)-(.+?)/.html$ /e/action/ShowInfo.php?classid=$1&id=$2&page=$3

#信息列表:listinfo-[!--classid--]-[!--page--].html
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^listinfo-(.+?)-(.+?)/.html$ /e/action/ListInfo/index.php?classid=$1&page=$2

#标题分类列表页:infotype-[!--ttid--]-[!--page--].html
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^infotype-(.+?)-(.+?)/.html$ /e/action/InfoType/index.php?ttid=$1&page=$2

#TAGS信息列表页:tags-[!--tagname--]-[!--page--].html
RewriteCond %{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规则

<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 $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 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /tag/(.*) /index\.php\?tag=$1
RewriteRule /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.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

PS:

如果你不知道所使用的主机是什么系统,或使用的Linux或Windows系统的vps主机,不会配置伪静态规则,可以咨询你的云服务商,他们会帮助你实现wordpress伪静态,虽然设置了伪静态,只是展示的伪静态后缀,其实还是动态页面,如果想完全静态页面,可以安装WP Super Cache或者Hyper Cache插件,为全站生成静态页面缓存。

看完上述内容,你们掌握虚拟主机怎么设置伪静态的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI