开发环境: Nginx+mysql+symfony1.4+netbeans

由于项目需要,我在symfony里面建立了3个app,分别为portal,lms,administrator

在这三个app里面index主入口给了portal这个,所以当我访问的时候直接ip地址访问到的是portal这个app,但是当我需要访问其他的app的时候呢,就需要http://xxx.xxx.xxx.xxx/lms.php/module/action

其实这样也是完全可以的不过我不是很喜欢这种感觉,宁愿换成

http://xxx.xxx.xxx.xxx/lms/module/action这种感觉。

这个时候我们需要做两步,来完成这个功能。

第一步:修改app的路由。下面是我修改的路由

  1. # default rules 
  2. homepage: 
  3.   url:   /lms 
  4.   param: { module: home, action: index } 
  5.  
  6. # generic rules 
  7. # please, remove them by adding more specific rules 
  8. default_index: 
  9.   url:   /lms/:module  
  10.   param: { action: index } 
  11.  
  12. default: 
  13.   url:   /lms/:module/:action/* 

第二步:修改nginx的配置

  1. location /lms { 
  2.        index        lms.php; 
  3.        try_files    $uri /lms.php?$args; 
  4.    } 

这样就能实现url的重写了。