我说的是在 PHP 程序里解决,不是修改 APACHE 服务器,求解!!

解决方案 »

  1.   

    程序必须有个入口文件,然后对url进行处理
      

  2.   

    .htaccess文件RewriteEngine On
    RewriteBase /
    RewriteRule ^([\d+).html$ news.php?id=$1
    #这个就是把news.php?id=123这类改成 123.html
      

  3.   

    如果你非要在PHP程序里搞的话,只能用404跳转了首先你得让这些静态地址访问出404页面来然后404页里用PHP来获取URL地址,根据地址的不同输出不同内容
      

  4.   

    [PATH_INFO] => /a/b/sd访问:http://192.168.1.10/index.php/a/b/sd
      

  5.   

    现在的apache默认支持pathinfo。
      

  6.   

    http://blog.csdn.net/aendo/article/details/5467417
    这个是ASP的,PHP是没必要这么做的,有更好的办法
      

  7.   

    - -!我要的是PHP 的方法
      

  8.   

    2楼正解。PHP 的方法 不知道楼主想要个什么法。
      

  9.   

    url你是必须得输的,这是第一步,解析url是二步,处理是第三步
    第一步你必须的输入一个abc.html
    第二步你再拐弯墨角的把html换为php
    你将无奈的跳到404你若实在不想换url
    就通过js来实现,访问的是abc.html
    可以通过ajax来偷偷嬷嬷跑php那把数据带过来填在里面
      

  10.   


    如果用 ajax 那样就没意义了,我要实现的是,在 php  程序里的伪静态,也就是说 不需要修改 apache 服务器的任何设置,修改.htaccess文件的话,是否属于修改服务器设置的范畴呢?
      

  11.   

    四种方法实现PHP伪静态
    在PHP中我们常常会需要使用伪静态。PHP的伪静态使用主要是为了隐藏传递的参数名,或者隐藏文件的真实路径,这样有利于程序的安全。本文向大家介绍的PHP伪静态实现的四种方法,希望大家能够通过这四种方法进一步加深对PHP伪静态的了解。以下就是全部方法代码: 伪静态方法一  1.// localhost/php100/test.php?id|1@action|2  
    2.$Php2Html_FileUrl = $_SERVER["REQUEST_URI"];  
    3.echo $Php2Html_FileUrl."<br>";// /php100/test.php?id|1@action|2  
    4.$Php2Html_UrlString = str_replace("?","",str_replace("/", "", strrchr(strrchr($Php2Html_FileUrl, "/"),"?")));  
    5.echo $Php2Html_UrlString."<br>";// id|1@action|2  
    6.$Php2Html_UrlQueryStrList = explode("@", $Php2Html_UrlString);  
    7.print_r($Php2Html_UrlQueryStrList);// Array ( [0] => id|1 [1] => action|2 )  
    8.echo "<br>";  
    9.foreach($Php2Html_UrlQueryStrList as $Php2Html_UrlQueryStr)  
    10.{  
    11.$Php2Html_TmpArray = explode("|", $Php2Html_UrlQueryStr);  
    12.print_r($Php2Html_TmpArray);// Array ( [0] => id [1] => 1 ) ; Array ( [0] => action [1] => 2 )  
    13.echo "<br>";  
    14.$_GET[$Php2Html_TmpArray[0]] = $Php2Html_TmpArray[1];  
    15.}  
    16.//echo '假静态:$_GET变量<br />';  
    17.print_r($_GET); // Array ( [id|1@action|2] => [id] => 1 [action] => 2 )  
    18.echo "<br>";  
    19.echo "<hr>";  
    20.echo $_GET[id]."<br>";// 1  
    21.echo $_GET[action];// 2  
    伪静态方法二  1.// localhost/php100/test.php/1/2  
    2.$filename = basename($_SERVER['SCRIPT_NAME']);  
    3.echo $_SERVER['SCRIPT_NAME']."<br>";// /php100/test.php  
    4.echo $filename."<br>";// test.php  
    5.if(strtolower($filename)=='test.php'){  
    6. if(!empty($_GET[id])){  
    7.  $id=intval($_GET[id]);  
    8.  echo $id."<br>";  
    9.  $action=intval($_GET[action]);  
    10.  echo $action."<br>";  
    11. }else{  
    12.  $nav=$_SERVER['REQUEST_URI'];  
    13.  echo "1:".$nav."<br>";// /php100/test.php/1/2  
    14.  $script=$_SERVER['SCRIPT_NAME'];  
    15.  echo "2:".$script."<br>";// /php100/test.php  
    16.  $nav=ereg_replace("^$script","",urldecode($nav));  
    17.  echo $nav."<br>"; // /1/2  
    18.  $vars=explode("/",$nav);  
    19.  print_r($vars);// Array ( [0] => [1] => 1 [2] => 2 )  
    20.  echo "<br>";  
    21.  $id=intval($vars[1]);  
    22.  $action=intval($vars[2]);  
    23. }  
    24. echo $id.'&'.$action;  
    25.}  
    http://www.phpnewer.com/index.php/Tszj/detail/id/435.html