什么是Nginxconfiguration文件的名称和位置(相当于htaccess)?

有很多关于如何编写Nginx重写规则来模仿Apache的.htaccess文件的教程 ,但是我不能自信地说我知道这个所谓的Nginxconfiguration文件实际上是什么名字或位置。 我正在寻找Nginx的configuration文件,允许你写服务器path和PHP指令。 我使用Ubuntu 12 Linux和Codeigniter作为我的PHP框架。

以下是我所知道的:

  1. 这个文件: /etc/nginx/nginx.conf尽pipe它的诱人的名字显然不是服务器指令的地方。
  2. 这个文件: /etc/nginx/sites-available/default看起来像我所需要的(我能够生成特定于我的应用程序的PHP错误),但我无法获得正确的Codeigniter特定的path路由。 首先,这是“configuration”文件/ .htaccess相当于每个人都谈到?

我在开发服务器上使用PHP和nginx进行以下configuration:

  1. /etc/nginx/nginx.conf添加了: include /etc/nginx/sites-enabled/*; 在最后}

  2. 运行以下命令来创build您的站点configuration:

     mkdir /etc/nginx/sites-available/ mkdir /etc/nginx/sites-enabled/ cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/<site> 
  3. 编辑站点configuration,一些可能的configuration(这是我在我的设置中提到的): http : //kbeezie.com/view/nginx-configuration-examples/

  4. 链接到可用的网站来启用它

     ln -s /etc/nginx/sites-available/<site> /etc/nginx/sites-enabled/<site> 
  5. 请记住,您几乎可以在任何地方将configuration文件包含在configuration中,这样可以在您想要将类似configuration放在一起时创build多个站点。

是的,.htaccess可以与nginx中的server{}块进行比较,但是它们也有很大的不同。 nginx有一个更轻量级的方法来parsingconfiguration,它不会扫描站点目录的额外configuration,只有nginx.conf才能看到。