【问题标题】:rewriting url with mod_rewrite in .htaccess在 .htaccess 中使用 mod_rewrite 重写 url
【发布时间】:2012-07-22 20:14:22
【问题描述】:

您好,我的网站有问题。

我有一个网址看起来像这样的网站:

site.com/page.php

听说可以改写url,如下:

site.com/page

我正在寻找那个特定的重写,但我找不到任何东西。我发现的只是:

RewriteRule ^$ page.php [L]
RewriteRule ^([a-z]+)/?([0-9]*)/?$ page.php?index=$2 [L]

这不起作用。

所以如果有人可以帮助我,我真的很感激。非常感谢。

【问题讨论】:

标签: php html url mod-rewrite


【解决方案1】:

把它放在你的 .htaccess 中

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

然后在您的任何网址中,您都可以这样做:

http://yoursite.com/about

而不是:

http://yoursite.com/about.php

它仍然会加载

【讨论】:

  • 好的 :) 只是另一个问题:我有一个如下所示的页面。由于多种语言,我想在用户输入时将其链接到 site.com/english,例如 site.com/spanish。非常感谢
  • 看看这个链接是否有帮助:stackoverflow.com/questions/6192135/…
  • 不是真的,因为问题与链接中的问题有点不同。示例:我创建了包含原始内容的页面“english.php”。现在用户输入的不是原始的“site.com/english”,而是使用德语单词“englisch”,因此它是“site.com/englisch”。但它在两个页面上的内容相同。你明白了吗?
  • 是的,我不知道如何提供帮助。发布一个新问题,我相信有人会知道
  • 好的,再次感谢您的帮助。祝你今天过得愉快。来自德国柏林的问候。
【解决方案2】:

试试这个

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

【讨论】:

    【解决方案3】:

    试试:

    Options +FollowSymlinks
    RewriteEngine on
    RewriteRule ^(.+)/$ $1 [L]
    

    并且/或者不要忘记重新启动 apache ;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-14
      • 2013-03-29
      • 2021-04-27
      • 1970-01-01
      • 2015-02-14
      相关资源
      最近更新 更多