【问题标题】:Short URL system: How to redirect the Custom URLs?短 URL 系统:如何重定向自定义 URL?
【发布时间】:2011-11-21 20:11:39
【问题描述】:

我正在尝试为我的公司制作一个类似 tinyurl 的服务,目前看起来不错,但现在我遇到了一个无法解决的问题。

假设我生成的 URL 是“www.thecompanyiworkfor.com/shorturl/2jh62/”。我的猜测是我必须使用一些脚本,比如说“redirect.php”,我在其中访问数据库,查找那个短网址,找到原始网址,然后使用标题重定向。

我的问题是,我怎样才能让“www.thecompanyiworkfor.com/shorturl/2jh62/”打开“redirect.php”并且我可以访问“shorturl”作为参数?我以为我必须对 .htaccess 做点什么,但我不确定我应该怎么做...

请帮忙!

【问题讨论】:

    标签: .htaccess mod-rewrite redirect


    【解决方案1】:

    这是我推荐的。

    1) 创建一个子域 (s.thecompanyiworkfor.com)。由于此文件夹与主 WWW 文件夹分开,因此管理起来会更容易,并且可以避免与 .htaccess 冲突。

    例如:

    s.thecompanyiworkfor.com => /home/thecompanyiworkfor.com/s_public_html/
    www.thecompanyiworkfor.com => /home/thecompanyiworkfor.com/public_html/
    

    2) 在/home/thecompanyiworkfor.com/s_public_html/中使用这个.htaccess

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !^index\.php
    RewriteRule ^([a-z0-9\-]+)(\/?)$ index.php?code=$1 [L,NC,QSA]
    

    然后在您的/home/thecompanyiworkfor.com/s_public_html/index.php 中,您可以检查哪个代码对应哪个 URL 和重定向。如果没有找到,重定向到www.thecompanyiworkfor.com

    【讨论】:

    • 哦,好的。我明白为什么它不起作用。与 RealURL 冲突。您是否在子域中解决了问题,并且效果很好。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2013-08-16
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    • 2012-09-01
    • 2012-03-12
    • 2015-09-24
    • 1970-01-01
    相关资源
    最近更新 更多