【问题标题】:Modify Urls using .htaccess使用 .htaccess 修改 URL
【发布时间】:2013-12-14 13:14:17
【问题描述】:

我正在尝试在我的一个 drupal 项目中构建推荐网址 所以这些网址将由网站上的不同用户共享 其他用户将通过共享链接访问网站 所以如果一个节点在

被访问
node/1 with path alias as content/test

这将共享为

content/test/referral/1

但是上面的共享网址会导致找不到页面 那么有没有办法让我们将 url 共享为

content/test/referral/1 

但是当请求来到drupal时 它在内部被视为

content/test?referral=1

这样不会导致找不到页面。

【问题讨论】:

    标签: .htaccess url-rewriting drupal-7


    【解决方案1】:

    您需要将content/test/referral/1 内部重写为content/test?refferal=1。确保为您的 Apache 服务器启用了 mod_rewrite,然后将以下规则添加到您的 .htaccess

    RewriteRule ^content/test/referral/([0-9]+)/?$ /content/test?referral=$1 [L]
    

    【讨论】:

    • 感谢您的回答。我尝试将此代码放在我的 .htccess 文件中,并尝试访问页面 content/test/referral/1 获取 page not found while content/test?referral=1 works.Yes mod_rewrite 已启用。
    • 您的 .htaccess 文件是否在您的 www-root 中?我对 Drupal 了解不多,但它是访问 php $_GET 变量还是对访问的实际 url(一些花哨的 $_SERVER 元素)做了一些花哨的事情?
    • 它在 drupal 根目录中,从 drupal 的角度来看,它应该在那里,是的,它被 apache 选中了。
    猜你喜欢
    • 2017-06-26
    • 2021-05-15
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多