【问题标题】:Apache2 ModRewrite Dynamic UrlApache2 ModRewrite 动态网址
【发布时间】:2014-07-13 19:46:36
【问题描述】:

我正在尝试使用 htaccess 重写我的 url 变量。

Example url http://example.com/assets/asset.php?id=9e233a25-994e-4262-8bfb-e477de1474ae

我需要的是

http://example.com/assets/9e233a25-994e-4262-8bfb-e477de1474ae

我的 htaccess 文件如下所示:

RewriteEngine On
RewriteBase /


RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|POST)\ /asset\.php\?id=(.*)\ HTTP
RewriteRule ^ /%1\? [R,L]

RewriteRule ^(.*)$ /asset.php?id=$1 [L]

我应该在我的 htaccess 文件中添加什么,因为这不起作用?

【问题讨论】:

    标签: regex apache .htaccess mod-rewrite apache2


    【解决方案1】:

    将此代码放入您的DocumentRoot/.htaccess

    RewriteEngine On
    RewriteBase /
    
    RewriteCond %{THE_REQUEST} \s/+assets/asset\.php\?id=([^\s&]+) [NC]
    RewriteRule ^ /assets/%1? [R,L]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^assets/([^/]+)/?$ assets/asset.php?id=$1 [L,QSA,NC]
    

    【讨论】:

    • 好的,它适用于根文件夹,但子文件夹呢?
    • 不客气。为此,您需要为此创建一个新问题,清楚地描述需求。
    猜你喜欢
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 2013-11-29
    • 2021-04-27
    • 2013-08-17
    • 2012-03-15
    • 2011-01-10
    • 2012-04-17
    相关资源
    最近更新 更多