web应用程序其中一个的特点就是无状态,当一个页面跳转到另一个页面时,此页面上的所有参数都将抛弃,而动态页面一般利用url地址来保存其参数,就像:www.attjs.net/essay.php?id=1这样,搜索引擎在录取该页面时,可能会因为问号而进入死循环,所以很多时候带问号的地址是不会进去的,这样便降低了页面的收录效率。静态网页的url正好不带问号,所以我们要伪造静态,当网站部署到php空间后,可以用下面方法给YOUDIANCMS设置伪静态。

1、后台设置

登录YOUDIANCMS网站后台,打开网站优化->伪静态设置,如图1所示,

图14 YOUDIANCMS设置伪静态教程

将“是否启用伪静态”设置为启用,“伪静态后缀设置”后面填写伪静态规则状态下的网页后缀名称,常见的可以设置为html、htm、shtml,不填写表示没有后缀名,这里填写html作为演示。

2、程序根目录加入规则文件

Apache服务器:将下面这些代码保存到.htaccess文件中,上传到程序根目录,如图2所示。

图25 YOUDIANCMS设置伪静态教程

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_URI} !^.*(\.css|\.js|\.gif|\.png|\.jpg|\.jpeg|\.bmp)$

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

RewriteRule ^(.*)App/Tpl/(.+).html$  / [NC,F]

</IfModule>

Iis服务器:将下面这些代码保存到 web.config文件中,上传到程序根目录。

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name="OrgPage" stopProcessing="true">

<match url="^(.*)$" />

<conditions logicalGrouping="MatchAll">

<add input="{HTTP_HOST}" pattern="^(.*)$" />

<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />

<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />

</conditions>

<action type="Rewrite" url="index.php/{R:1}" />

</rule>

<rule name="disableDownloadHtml">

<match url="^App/Tpl/.*.html$" ignoreCase="true" />

<action type="CustomResponse" url="/" statusCode="403" statusReason="Forbidden" statusDescription="Forbidden" />

</rule>

</rules>

</rewrite>

</system.webServer>

</configuration>

Nginx服务器:将下面这些代码保存到httpd.ini文件中,上传到程序根目录。

RewriteRule (.*)$ /index\.php\?s=$1 [I]

上传完毕后YOUDIANCMS的伪静态就设置好了,如图3所示,

图35 YOUDIANCMS设置伪静态教程

访问该网站时,浏览器地址栏中的url会以.html的形式呈现出来。

本文地址:http://www.51php.com/youdiancms/26465.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读: