1

URL から index.php を削除しようとしています。これは、EZPublish サイトにある .htaccess の例と ForceVirtualHost=true で動作しています。問題は、index.php を指す古いリンクが機能しなくなったことです (これは、検索エンジンからリンクする場合に問題になります)。

.htaccess で書き換えルールを使用して、これに対する修正を見つけようとしましたが、これを機能させることができません。私の試みのいくつかは次のとおりです。

試行 1

RewriteCond %{REQUEST_URI} ^/index.php
RewriteRule ^index\.php(.*) http://www.mysite.com$1

RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule .* index.php [L]

この試行により、無限ループが発生します。

試行 2

RewriteCond %{REQUEST_URI} ^/(index\.php)?(.*)$
RewriteRule %2 index.php [L]

RewriteRule .* index.php [L]

また、機能しません:-(。

注意。「RewriteRule .* index.php [L]」は、EZPublish で仮想ホストのセットアップを機能させるために必要です。

どんな助けでも大歓迎です。

ヴィヴィアン

4

2 に答える 2

1

settings / override / site.ini.append.php:

 [SiteAccessSettings]
 ForceVirtualHost=true
于 2011-01-05T00:08:46.447 に答える
0

代わりにリクエストラインを確認してみてください。

RewriteCond %{THE_REQUEST} ^GET\ /index\.php
RewriteRule ^index\.php/?([^/].*)?$ /$1 [L,R=301]

RewriteRule !^index\.php$ index.php [L]
于 2009-10-10T10:58:29.377 に答える