二级目录隐藏 index.php 路径

nginx_rewrite 规则介绍

rewrite 使用 nginx 提供的全局变量和自己设置的变量,结合正则表达式和标志位 实现 url 重写以及重定位。

rewrite 只能放在 server{},location{},if{} 中使用,并且只能对域名后边的除去传递的参数外的字符串起作用,例如 http://domain.com/shop/goods/index.php?id=1&u=str 只能对 /shop/goods/index.php 重写。

rewrite 语法规则: rewrite regex replacement [flag]; // rewrite 正则表达式 替换文本;

隐藏 index.php 路径

示例代码

location / {
    index  index.html index.htm index.php;  

    if (!-e $request_filename) { # 如果文件或文件夹不存在则重写
        rewrite ^/(.*)$ /index.php?$1 last;
        break;
    }
}

继续阅读

在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal 或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器。我们在上面搭建一个 nginx + mysql + php-fpm 的环境,这就是常说的 LEMP(Linux NGINX MySQL / MariaDB PHP) 。我们不过多解释什么是什么,而是着重讲流程与方法,想了解具体的细节,去搜索下吧:)这个手册是在阿里云上测试的,不过应该也适用于其它使用 CentOS 系统的服务器。

2016.12.05:更新了安装配置的方法,适用 CentOS 7.x,另外运行环境上的软件也都更新了,比如之前是 PHP 5.3,现在是 PHP 7。还有一篇在本地使用虚拟机搭建这套环境的方法,可以参考。我还专门做了一套视频课程《 LEMP 网站应用运行环境 》,介绍了搭建 PHP 运行环境的整个过程,包括解决遇到的一些问题。了解更多关于 Linux 的东西,可以参考  《 CentOS 》这个课程包。现在我更推荐使用 Docker 来做网站的运行环境,可以参考 《 Docker 》课程包。

继续阅读