2017-02-16 124 views
1

我有一个奇怪的问题.htaccess和网址。我有这个htaccess的Htaccess的问题,无法弄清楚

<IfModule mod_rewrite.c> 
     RewriteEngine On 
     RewriteBase /sitesubfolder/ 

     RewriteRule ^test$ pages/test.php 
</IfModule> 

这对我的HREF链接

<a href="test/"> Link </a> 

该网站是在子文件夹不是根目录和路径是/var/www/www/site/ 当我去的网站网址,然后点击刷新链接页面,但保持在同一页面上。如果我再次点击url变成site.com/test/test/test ..每次点击Link时,只需再在页面上放置一个/test/即可。

服务器是nginx如果是问题。

我已经添加了这site.conf

server { 

    root /var/www/www/site/; 
    index index.php index.html; 

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

不过还是一样的(我重新加载nginx的也可以)

+0

'.htaccess'是一个Apache文件,你正在使用'nginx'。 –

+0

呵呵,不知道这个..并且没有办法在'ngi中使用它nx'?我该如何重写网址并制作“漂亮”的网址? – VLS

+0

'nginx'由'nginx.conf'或其中包含的文件之一配置。您需要查看您现有的配置,但'.htaccess'很容易使用['try_files'指令](http://nginx.org/en/docs/http/ngx_http_core_module.html#try_files)实现。 –

回答

1

从现有.htaccess文件中,在我看来,这个问题可以概括为如下:

文档根目录是/var/www/www/site,其下有一个子文件夹sitesubfolder,其中包含另一个名为pages的子文件夹。

当URI /sitesubfolder内,相对链接test/(其中绝对链接/sitesubfolder/test/应该调用/var/www/www/site/sitesubfolder/pages/test.php

有很多方法来实现这一点,例如:

rewrite ^/sitesubfolder/test/$ /sitesubfolder/pages/test.php last; 

this document更多。

+0

非常感谢。即使我仍然有一些问题,这是非常有益的出发点。 – VLS