【问题标题】:Joomla htaccess rewrite exception for custom index.php issue自定义 index.php 问题的 Joomla htaccess 重写异常
【发布时间】:2011-05-29 21:22:29
【问题描述】:

我正在尝试对 Joomla 1.6.3 中的默认 htaccess 进行例外处理,以便为我自己的 php 脚本提供友好的 url。

这个想法是以下已经工作的网址: www.mysite.com/wrx/system/index.html?parameter1=AE23HtySght34P 外部可以这样调用,也可以显示为: www.mysite.com/wrx/system/AE23HtySght34P/

我放置在 htaccess 中的规则正在运行,但将其恢复为显示带有参数的 php...

任何帮助将不胜感激。

西蒙

.htaccess:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]

RewriteRule ^wrx/system/([A-Za-z0-9-]+)$ /wrx/system/index.php?id_parameter1=$1 [R=301,L]

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]

【问题讨论】:

    标签: php .htaccess mod-rewrite joomla


    【解决方案1】:

    把这个放在RewriteEngine on之后,所以它是第一个被评估的。

    RewriteRule /wrx/system/([a-zA-Z0-9]+)$ /wrx/system/index.php?id_parameter1=$1 [L]
    
    • ([a-zA-Z0-9]+)$ 捕获所有 (1+) 个字符(不仅是数字),直到 url 结束
    • [L] = 最后一条规则(对于本次评估,将根据规则再次评估重写的 url)

    【讨论】:

    • 谢谢 Guido :) 我刚刚在您回答的同时编辑了我的问题。所以它确实像你说的那样工作(已经发现),但这并不是我想要的......如果可能的话,我想保持 URL 显示为:www.mysite.com/wrx/system/AE23HtySght34P/
    • @Simon 从选项中删除 R=301,这涉及到 http 301 重定向(发出新请求)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多