【问题标题】:Use Two rules for Htaccess对 Htaccess 使用两条规则
【发布时间】:2014-11-09 05:06:27
【问题描述】:

这条线正常

RewriteRule ^(.*)/(.*)?$ site/$1/pagina.php?pagina=$2 [L]

现在我试图在访问 /inicio 链接时转到 index.php 页面。

RewriteRule ^inicio/(.*)?$ site/$1/index.php [L]

因此

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^site/

RewriteRule ^inicio/(.*)?$ site/$1/index.php [NC,L]
RewriteRule ^(.*)/(.*)?$ site/$1/pagina.php?pagina=$2 [L]

.

.

.

当前代码,在朋友@anubhava 的帮助下

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_URI} ^/site/ [NC]
RewriteRule ^ - [L]


RewriteRule ^([^/]+)/inicio?$ site/$1/index.php [NC,L,QSA]
RewriteRule ^([^/]+)/noticia/([^/]+)/?$ site/$1/pagina.php?pagina=pag_noticiasVer.php&id=$2 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$ site/$1/pagina.php?pagina=$2 [L,QSA]

【问题讨论】:

    标签: php regex apache .htaccess mod-rewrite


    【解决方案1】:

    这样吧:

    RewriteEngine on
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d [OR]
    RewriteCond %{REQUEST_URI} ^/site/ [NC]
    RewriteRule ^ - [L]
    
    RewriteRule ^inicio/([^/]+)/?$ site/$1/index.php [NC,L,QSA]
    
    RewriteRule ^([^/]+)/([^/]+)/?$ site/$1/pagina.php?pagina=$2 [L,QSA]
    

    RewriteCond只适用于下一个RewriteRule

    【讨论】:

    • 我正在尝试向新闻页面添加新规则。如果我把 /noticia 打开正常页面,但没有错误,因为 GET 的 ID。所以想法是将消息 ID 放在 /noticia/​​1/noticia/​​2/noticia/​​3 之后。新规则:RewriteRule ^([^/]+)/noticia/([^/]+)/?$ site/$1/pagina.php?pagina=pag_noticiasVer.php&id=$2 [L,QSA]
    • 您需要将此新规则保留在inicio/ 规则的下方。
    • 我需要创建一个访问新闻页面的条件。因为它还必须输入新闻的ID。示例 noticia?id=1 表示。 Ai 看起来像 /noticia/​​1。但我不能。
    • 我建议您创建一个包含所有详细信息的新问题。由于从 cmets 部分扩展问题对未来的访问者不利。您还可以包含一些示例并链接到此问题,以便一次性获得更好的答案。
    • 朋友是对的,我的链接是错误的,我在旧网站上进行了很多更改,而 acebei 忘记了也更改了一些文件夹的名称。原来是“pagina.php?pagina=pag_noticiasVer.php”,所以必须是“pagina.php?pagina=noticia”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-09
    • 2011-10-02
    • 2015-09-07
    • 2013-04-24
    • 1970-01-01
    相关资源
    最近更新 更多