.htaccess漂亮的URL重写像文件夹

时间:2015-12-07 07:24:50

标签: regex .htaccess mod-rewrite

我正在尝试将我的一个网址重写为漂亮的网址,但我似乎无法弄明白。这是我尝试过的。

我的文件夹布局

<IfModule mod_rewrite.c>  
RewriteEngine On
RewriteRule ^([^/]+)/?$ category.php?category_id=$1 [L,QSA]
</IfModule>

我的htaccess文件

http://example.com/product/category.php?category_id=1&category=car-and-buses

我想转动这个网址

http://example.com/product/1/car-and-buses

进入此网址

{{1}}

到目前为止我尝试过的所有内容都让我错过了配置错误或者我的浏览器上的401 ..

1 个答案:

答案 0 :(得分:1)

我猜你试图转

function link ($scope, $element, $attrs, ngModelCtrl) {

    ////////////////////////////////////////////////////////////////////////////////
    // the following code handles positioning of the datetimepicker widget
    // just below the target element. This is to avoid the hideous datepicker bug
    // that causes it to be trimmed when its parent has limited height
    // Z.P
    ////////////////////////////////////////////////////////////////////////////////
    $element.on('dp.show', function(e) {

        // get the datetimepciker
        var elem = angular.element('.bootstrap-datetimepicker-widget');

        // detach from parent element and append to body
        angular.element('body').append(elem);

        // get target element
        var target = e.currentTarget || e.delegateTarget || e.target;

        // get bounding rects of parent and element
        var targetRect = angular.element(target)[0].getBoundingClientRect();
        var elemRect = elem[0].getBoundingClientRect();

        // do some math
        var marginTop = 10;
        var center = targetRect.left + (targetRect.width / 2) - (elemRect.width / 2);
        var top = targetRect.bottom + marginTop;

        // position the widget properly just below parent
        elem.css('position', 'absolute');
        elem.css('z-index', '10000000000000');
        elem.css('top', top + 'px');
        elem.css('bottom', 'auto');
        elem.css('left', center + 'px');
    });
}

这样您就可以使用$ _GET [&#39; category_id&#39;]

获取category.php中的参数
http://example.com/product/1/car-and-buses

尝试此操作并将.htaccess文件放在根目录

http://example.com/product/category.php?category_id=1&category=car-and-buses

修改<!/强>

试试这个,因为上述解决方案并不适合您。这应该重写对index.php的所有请求。这不是您问题的解决方案,但请尝试以确保您的.htaccess文件中没有任何其他问题

<IfModule mod_rewrite.c>
  RewriteEngine On      
  RewriteRule ^product/(.*)/(.*) /product/category.php?category_id=$1&category=$2 [QSA,L]
</IfModule>