http://www.aa.com/php/news/List/15这个链接过去就是个新闻详情问题是:怎么样生成这样的格式!

解决方案 »

  1.   

    沙发。
    方法一,按照新闻的编号生成静态文件。
    方法二,地址重写,rewrite.
      

  2.   

    利用Apache的mod_rewrite请教1L 按照新闻的编号生成静态文件  能说详细点吗
      

  3.   

    要是按照新闻编号生成的话 最起码得是个  1.html  2.html....为什么他是15呢?  不理解!  
    方法二没试过 也不明白!  
    这两个方法哪个好点呢?
      

  4.   

    用Apache的mod_rewrite挺好
    方便,简单.
    原理就是服务器自动按照你设定的规则把url转换了一下,用到正则知识而已
    比如
    http://www.aa.com/php/news/List/15 => http://www.aa.com/php/newsList.php?id=15
      

  5.   

    http://www.aa.com/php/news/List/15
    这个应该是服务器端配置的rewirte,伪静态的形式,
     比如http://www.aa.com/php/news/List/list.php?id=15
     会被变成http://www.aa.com/php/news/List/15,执行的程序是list.php,
    这样有利于搜索引擎搜索;转换成静态页面的话,效率会有狠大提高(第一种方式);
      

  6.   


    啊。。没接触过 貌似很麻烦!  刚才看了一下 还要写什么 .htaccess文件!  
      

  7.   

    伪静态效率会有什么提高啊?我觉得只是重写了url,更好的迎合搜索引擎,可以由自己来构造了url而已,实际上访问的还是php文件啊。
      

  8.   

    http://www.aa.com/php/news/List/15
    有可能用zend框架mvc的模式的话也可以的,我的一个项目中是如下的格式
    http://www.hello.com/news/newsclassify/add/id/15
      

  9.   

    第一种方式还没回答呢?要是按照新闻编号生成的话 最起码得是个 1.html 2.html....为什么他是15呢? 不理解!   第二种  用五楼的话说就是  这个应该是服务器端配置的rewirte,伪静态的形式,我去研究一下
      

  10.   

    楼主这个是用cakephp作的么?是的话,首先是添加读control,ctp文件里读数据就OK
      

  11.   

    还可以用 linux 的文件链接 这样比较麻烦 不过可以实现
    最常用的还是用Apache 做重定向 
      

  12.   

    一个商品别人不能看到,就算你程序再怎么厉害,那都是失败的作品.
    所以为什么国内的SEO那么吃香了...
      

  13.   

    http://www.diysys.com有很多关于php,mysql,js,css的信息
      

  14.   

    这个不是HTML静态页面,是URL伪静态
    所谓伪静态就是不是真的静态(废话),就是说地址看起来是静态的(没有“?”号),但其实它请求的是一个动态的页面,也就是PHP页面。只是URL上隐藏了。
    实现伪静态有三种方法:
    第一种:配置apache的配置文件,实现url重写
    第二种:在目录下创建.htaccess文件并编写重写规则
    第三种:利用PHP本身进行实现
    一般都是用第二种方法,不过我在用第三种,因为服务器不是自己的,不可能配置apache也不知道它是否支持.htaccess 所以用PHP实现了。生成静态页面,我知道的有两种方法
    第一种:利用模板,假设模板文件temp.tpl代码为:<html><head></head><body>{variable}</body></html>,这时php程序读取模板文件并且将其中{variable}(这里只是举例,实际情况要复杂的多,参考smarty)用有意义的内容替换掉,并生成temp.html文件保存到某一个目录下面,那么下次访问的时候就可以直接访问temp.html文件了,更新的话就重复上面的操作即可。
    第二种:利用浏览器输出缓存,也就是ob_start系列函数来生成。ob_start打开输出缓存,所有将要输出到浏览器的内容都将暂时保存在缓存中,确定后面没有更多的输出后,就利用ob_get_contents函数获取缓存区内容,然后将获得的内容保存成对应的静态页面就可以了