存档

‘伪静态’ 分类的存档

dedecms伪静态设置全教程

2010年8月22日

1、服务器必须支持URL重写
2、后台开启伪静态
3、栏目设置使用动态。
4。添加文档时选择使用动态浏览。
5。需要修改php文件include/channelunit.func.php

查找
return $GLOBALS["cfg_plus_dir"].”/view-”.$aid.’-1.html’;
修改为
return “/view-”.$aid.’-1.html’;
查找
return $GLOBALS['cfg_phpurl'].”/view.php?aid=$aid”;
修改为
return “/view.php?aid=$aid”;

其实不修改也可以,但是URL地址会长一点。这个是文章的。

查找
$reurl = $GLOBALS['cfg_phpurl'].”/list.php?tid=”.$typeid;
修改为
$reurl = “/list-”.$typeid.”.html”;

这个必须修改,是栏目页的。

6、需要在根目录下增加一个.htaccess文件(只适用于linux系统,并需要虚拟主机支持)。
添加如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^list-([0-9]+)\.html$ /plus/list.php?tid=$1
RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
RewriteRule ^view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1
RewriteRule ^view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2
</IfModule>

如果是FreeBSD服务器可使用以下规则(需要虚拟主机支持):

rewrite ^/list-([0-9]+).html$ /list.php?tid=$1;
 rewrite ^/list-([0-9]+)-([0-9]+)-([0-9]+).html$ /list.php?tid=$1&totalresult=$2&PageNo=$3;
 rewrite ^/view-([0-9]+)-1.html$ /view.php?arcID=$1;
 rewrite ^/view-([0-9]+)-([0-9]+).html$ /view.php?aid=$1&pageno=$2;

dedecms搜索的伪静态.htaccess 文件里加入如下两句即可:

RewriteRule ^(.*)/search/([^/]*)$   $1/plus/search\.php\?keyword=$2
RewriteRule ^(.*)/search/([^/]*)/(\d)$   $1/plus/search\.php\?keyword=$2&PageNo=$3

如果以前添加过文章,需要批量把旧文章也改成伪静态,可使用以下两句SQL语句:

update dede_arctype set isdefault=-1;

update dede_archives set ismake=-1;

以上教程来源于网络,适用于dedecms V5.3-V5.6版,其它版本未测,如有疑问可与我联系:admin@arnol.org

伪静态

IIS 伪静态(Rewrite) 配置图文教程

2010年4月13日

昨天人问我,看了我写的Wrodpress设置伪静态简明教程,可是还是设置不了伪静态,是什么原因。如果照我教程来做的话还设置不了伪静态,很明显是主机不支持伪静态了。

要解决的话,如果是买的空间,需要联系空间商添加伪静态支持。这些一般的空间都支持的,但他是自己的独立主机,用的windows系统,就要自己设置IIS支持Rewrite了。

首先需要下载IIS Rewrite

ISAPI Rewrite 3 lite 绿色版下载

ISAPI_Rewrite 2.13全功能版

Isapi-rewirte 1.3 绿色版

接着开始配置IIS Rewrite

1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:\Rewrite)下。

IIS Rewrite

 

2、在“IIS管理器”里选择网站,右键,属性。

IIS Rewrite

3、选择“ISAPI”,点击“添加”。

IIS Rewrite

4、填入筛选器名称,如“rewrite”。

IIS Rewrite

5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。

IIS Rewrite

6、确认选择正确后,点击“确定”。

IIS Rewrite

7、点击“确定”,完成筛选器添加。

IIS Rewrite

8、重启IIS。

IIS Rewrite

IIS Rewrite

9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。

IIS Rewrite

最后设置httpd.ini 文件

以上步骤只是设置了IIS支持Rewrite而以,需要设置网站的伪静态,还要伪静态规则。解压后的 IIS Rewrite 组件目录(如 C:\Rewrite)中,有一个 httpd.ini 文件,将相应伪静态规则写入到这个文件中即可。

相关阅读:

Wrodpress设置伪静态简明教程

自动将Apache伪静态转换成Nginx伪静态

伪静态 , , , ,

自动将Apache伪静态转换成Nginx伪静态

2010年3月22日

Apache依然是PHP中的霸主,许多人过多的关注Apache而忽略了Nginx。

想必有些人把Apache换成了Nginx后,网站原来的伪静态便不能用了吧?其实这时候只要把Apache Rewrite伪静态规则转换为Nginx Rewrite就OK了。

国外有个网站,可以自动的将Apache Rewrite伪静态规则转换为Nginx Rewrite,网址:http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

或者自己手动转换也可以,转换方法参考以下例子:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/([a-z]+)/p_([0-9]+)\.html$ /list\.php\?id=$1

</IfModule>

rewrite ^/([a-z]+)/p_([0-9]+)\.html$ /list.php?id=$1 last;

APACHE后则不能直接使用点和问号

RewriteRule 换为 rewrite

在每条规则后加上 last;

伪静态 , ,

Wrodpress设置伪静态简明教程

2009年12月2日

1、进入后台
2、设置
3、固定链接
4、自定义 /%year%_%monthnum%_%post_id%.html

首先我们看看wordpress官方列出的部分可以使用的固定链接基本参数:
%year%
基于文章发布年份,比如2009;
%monthnum%
基于文章发布月份,比如12;
%day%
基于文章发布当日,比如28;
%hour%
基于文章发布小时数,比如15;
%minute%
基于文章发布分钟数,比如43;
%second%
基于文章发布秒数,比如33;
%postname%
基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题;
%post_id%
基于文章post_id,比如888;
%category%
基于文章分类,子分类会处理成“分类/子分类”这种形式;
%author%
基于文章作者名,如Arnol.

将上述参数进行组合,即可得到wordpress的固定链接形式。网上常见的几种设置方法:
1、/%year%/%monthnum%/%day%/%postname%/
2、/%year%/%monthnum%/%postname%/
3、/%year%/%monthnum%/%day%/%postname%.html
4、/%year%/%monthnum%/%postname%.html
5、/%category%/%postname%.html
6、/%post_id%.html
诸如此类,可以自由定义的。个人比较倾向于/%year%_%monthnum%_%post_id%.html这种形式,设置成功后伪静态为:http://arnol.org/2009_11_1.html
1、考虑到自己博客属单人维护,内容不可能很多,所以目录结构不宜过深,其实按照网上的说法,三层以内都是完全没问题的,可是一旦层数多了后,整个网站就变得比较松散了,网上似乎把这个叫黏合,所以我觉得上述第1、3种可以放弃,除非站点内容丰富,也通过tag之类的进行联合。
2、我个人是倾向于使用基于日期的,比如这种/%year%_%monthnum%_%post_id%.html生成的就是 http://arnol.org/2009_11_1.html,这样既显示了日期,而网页又在根目录,不会分成几层。
3、我没有用现在更容易被收录的/结构而是采用html为扩展名的形式,我的想法是一个网站不能总有目录结构没有html文件吧,全站都是目录结构了,觉得这样看上去不好看,所以还是按照传统的样式好了。

希望本教程能给一些新手带来帮助。

伪静态 , , ,