你好我有以下关于mod_rewrite的问题:
我已经建立了一个名为example.php
现在我仍在寻找以下问题的重写:
由于不同的语言但页面的内容相同,example.php
我希望在用户输入时进行重写site.com/beispiel.php
example
德语中的同一个词是什么。所以只有一页。但虚构的网址 site.com/beispiel.php
将是相同的内容。
所以如果有人知道如何解决这个问题,我真的很感激。多谢。
你好我有以下关于mod_rewrite的问题:
我已经建立了一个名为example.php
现在我仍在寻找以下问题的重写:
由于不同的语言但页面的内容相同,example.php
我希望在用户输入时进行重写site.com/beispiel.php
example
德语中的同一个词是什么。所以只有一页。但虚构的网址 site.com/beispiel.php
将是相同的内容。
所以如果有人知道如何解决这个问题,我真的很感激。多谢。
重定向和内部重定向是两个不同的东西。
带有代码 302 或 301 的 HTTP 重定向意味着多个 HTTP 请求,用户将在最后看到他已被重定向到 /example.php。内部重定向意味着在服务器上为请求的文件 A 提供一个文件 B,而用户不知道它。
内部重定向不需要 mod-rewrite 的规则。Alias和AliasMatch指令可用于将一些请求的文件映射到真实文件。
Alias /beispiel.php /path/to/my/docroot/example.php
通过使用 Redirect 和 RedirectMatch 指令,也可以在没有 mod_rewrite 的情况下执行外部重定向。
现在您还可以使用 mod_rewrite 来执行这两种类型的重定向(内部和外部)。
# internal alias
RewriteRule ^beispiel.php$ /path/to/my/docroot/example.php [L]
# Or external redirection, with a R tag
RewriteRule ^beispiel.php$ example.php [L, NC, R=302]
使用外部重定向 qlways 首先尝试一些处理 302 重定向的 rewriteRiles。当它工作时,您可以使用 301 重定向作为浏览器存储 301 结果,并且在重新启动之前不再询问。
如果你有大量的重定向要执行并且你没有被 .htaccess 文件卡住(即你可以编辑真正的 apache 配置文件),你可以看看RewriteMap来加速你的 rewriteRules。
我在想:
如果您使用谷歌翻译器,如 使用谷歌翻译器 API 翻译 PHP $string中所示
然后从 PHP 重定向到
www.yoursite.com/translate.php?translated_language=keyword_from_script
然后使用带有该参数的最后一个答案中的 mod_rewrite ,它应该可以工作吗?