【问题标题】:htaccess redirect url to directory filehtaccess 将 url 重定向到目录文件
【发布时间】:2016-09-21 17:11:34
【问题描述】:

我正在努力使我的网站 url 搜索引擎友好,并且正在使用 GET 参数重写 url,所以我已经完成了重写,但现在 htaccess 没有将该 url 指向应该处理 url 的 php 文件

我的旧网址

www.domain.com/foo/myfile.php?nid=554

用 php 重写的新 url

www.domain.com/foo/554-demo-page-title

我目前适用于旧网址但不适用于新网址的 htaccess 规则

Options +FollowSymLinks
RewriteEngine On 
#RewriteCond %{SCRIPT_FILENAME} !-d
#RewriteCond %{SCRIPT_FILENAME} !-f
RewriteBase /
RewriteRule ^([0-9]+)-(.*) ./foo/myfile.php?nid=$1 [NC]

所以我希望新旧 url 都放在 /foo/myfile.php 上,因为 myfile.php 可以处理这两个 url,以防旧 url 它重写并重定向为新 url,我使用 htaccess 规则玩了几个小时,但是没有成功

【问题讨论】:

    标签: php .htaccess


    【解决方案1】:

    您可以在站点根目录.htaccess 中使用此规则(假设foo/ 目录内有.htaccess):

    Options +FollowSymLinks
    RewriteEngine On 
    RewriteBase /
    
    RewriteRule ^foo/(\d+)-.*$ foo/myfile.php [L,QSA,NC]
    

    如果您已经有 /foo/.htaccess,则在该文件中使用此规则:

    Options +FollowSymLinks
    RewriteEngine On 
    RewriteBase /foo/
    
    RewriteRule ^(\d+)-.*$ myfile.php [L,QSA]
    

    【讨论】:

    • 不,没有其他 htaccess 规则...你的第一个 htaccess 规则集我添加到站点根 htaccess 文件中,你的第二个 htaccess 规则集我添加到我创建的新的 foo dir htaccess 中,
    • ya 使用旧网址并将垃圾添加到 foo dir .htaccess 它会引发 500 错误
    • 你能检查一下吗 :: privnote.com/8Y3eai5U 用 123456789 打开它,谢谢
    猜你喜欢
    • 2014-09-28
    • 2020-08-23
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-08
    相关资源
    最近更新 更多