1

我想用 apache mod_rewrite 做四件事:

  1. 删除 www

    http://www.example.com/ >>> http://example.com/
    
  2. 删除 index.php

    http://example.com/index.php >>> http://example.com/
    
  3. 重写 URI

    http://example.com/index.php?rewrite=request >>> http://example.com/request
    
  4. 删除最后一个斜线

    http://example.com/request/ >>> http://example.com/request
    

我读过很多例子,但没有一个能正常工作。

编辑:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com
RewriteRule (.*) http://example.com/$1 [R=301,L]

RewriteRule ^([^/\.]+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^([^/\.]+)$ index.php?rewrite=$1 [L]
</IfModule>

我现在正在使用它,但这还不够。谢谢

4

1 回答 1

0
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com
RewriteRule (.*)http://www.example.com/$1 [R=301,L]


RewriteRule ^([^/\.]+)/$ http:// %{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^([^/\.]+)$ index.php?rewrite=$1 [L]

或者

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ index\.php\ HTTP
RewriteRule ^index\.php$ http:// www.example.com/ [R=301,L]

使用 apache mod_rewrite:

于 2013-08-01T04:44:57.260 回答