对于LNMP这样架构的网站来说,一般都是基于php框架开发,php框架一般都会讲究优雅链接,比如Laravel,CodeIgniter,ThinkPHP等都是支持这种链接模式的,在服务器配置上也叫作url重写,目前框架大都采用单一入口的index.php然后基于MVC模式的话一般是/index.php/Model/function这种请求方式,所以如果能去掉index.php入口文件整个url就显得简洁美观,和Python、Java等开发的网站url模式统一,Apache和nginx都支持这种url的模式,下面说一下nginx配置的方式

  首先进入nginx的安装目录,上篇文章中说了在配置文件nginx.conf中,有server {}这样的代码段用来指定一个站点的配置,这下面有很多其他的配置,我们在配置文件或者include的配置文件中对应的server {}代码段中添加如下代码来实现url重写:

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

  nginx服务器设置url的优雅链接

  如果原来location / {}这段代码已经存在的话,那么就直接在里面追加图中那一行代码即可,因为同一个路由的配置一般放到一块;保存之后,重启nginx服务器即可生效,如果nginx被添加到服务的话,可以使用 /etc/init.d/nginx restart 进行重启,重启之后url就可以得到美化了

  网上还有另外一种url重写的方式,还是在同样位置添加如下代码来解决:

    location / {
        if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php?s=$1 last;
            break;
        }
    }

  保存之后同样重启nginx生效,也可以实现url美化的效果,不过根据网上有些文章的说法,推荐第一种方式进行url的美化

相关文章:

  • 2021-04-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-05
  • 2021-08-19
  • 2021-07-12
猜你喜欢
  • 2021-12-25
  • 2022-01-31
  • 2021-08-03
  • 2022-12-23
  • 2021-12-08
  • 2021-09-11
  • 2021-06-01
相关资源
相似解决方案