第一种、Linux系统虚拟主机伪静态配置规则
Linux虚拟主机,需要在根目录下修改.htaccess文件,来实现伪静态,如果没有.htaccess,则可以新建一个文本文档,并重命名为.htaccess。.htaccess文件配置伪静态规则如下:
RewriteEngine on RewriteRule ^(/?html/.*?)$ /gourl.php?url=$1 [L] RewriteRule ^(/?list/cate/.*?)$ /gourl.php?url=$1 [L] RewriteRule ^(/?news/detail/.*?)$ /gourl.php?url=$1 [L] RewriteRule ^(/?jourmy/cn/html/.*?)$ /gourl.php?url=$1 [L]
第二种、Windows系统虚拟主机伪静态配置规则
Windows虚拟主机,配置文件一般是web.config,在根目录下找到文件,并将伪静态规则增加进去:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="rule1"> <match url="(/?html/.*)" ignoreCase="true" /> <action type="Rewrite" url="/gourl.php?url={R:1}" appendQueryString="true" /> </rule> <rule name="rule2"> <match url="(/?list/cate/.*)" ignoreCase="true" /> <action type="Rewrite" url="/gourl.php?url={R:1}" appendQueryString="true" /> </rule> <rule name="rule3"> <match url="(/?news/detail/.*)" ignoreCase="true" /> <action type="Rewrite" url="/gourl.php?url={R:1}" appendQueryString="true" /> </rule> <rule name="rule4"> <match url="(/?jourmy/cn/html/.*)" ignoreCase="true" /> <action type="Rewrite" url="/gourl.php?url={R:1}" appendQueryString="true" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
如果我使用的是WordPress来搭建网站怎么设置?
WordPress网站,大多是采用Linux系统,因此上面第一种方法适用于WordPress类型网站。
当然,我们也可以直接使用WordPress的自带功能来实现伪静态化配置,比如以西部数码的IDC知识库设置方式来简单说明
登录WordPress管理后台,在 设置-固定链接 下,有:
默认的朴素设置、日期和名称型、月份和名称型、数字型、文章名、自定义结构。
我们采用的是自定义结构,在链接后面,增加 /%post_id%.html 代表文章链接使用文章ID来作为链接,并且所有文章在/docs/目录下。
到这里,并没有结束,你还需要配置.htaccess文件。将以下代码放入到.htaccess文件里:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /docs/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /docs/index.php [L] </IfModule>
自此,你的伪静态规则才能正式生效,否则页面会变成404。注意这里需要在.htaccess文件定义docs目录。
以上关于虚拟主机伪静态规则怎么添加的方法如果不能解决问题,建议联系云服务运营商咨询对应规则设置,一般情况下,云服务商会提供好伪静态配置文件和伪静态规则,直接与他们联系获取即可。如需购买虚拟主机,首推西部数码:https://www.west.cn/services/webhosting/