1

同じサイトに myBB フォーラムがあることに加えて、開発中の単純な Zend Framework サイトがあります。

フォーラムを配置しました (Zend scaffolding の public フォルダー内の「forum」というフォルダーに配置しましたが、URL の書き換えを制御する .htaccess がフォーラムの問題を引き起こすという点で問題が発生します。

次に、パブリック フォルダーの外にフォーラムを配置しました。これは、.htaccess を削除した場合にのみ正常に機能しますが、Zend は明らかに機能しません。

URL http://www.mysite.com/forumが使用されている場合、Zend Framework の URL を書き換えず、それ以外は public フォルダーに転送するように、.htaccess 書き換えを機能させるにはどうすればよいですか。

私の webroot .htaccess コードは次のとおりです。

RewriteEngine On

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

ティア・ジョン

4

2 に答える 2

1

.htaccess を次のように修正します。

Options +FollowSymLinks
RewriteEngine On

RewriteRule ^\.htaccess$ - [F]

RewriteRule ^(forum)($|/) - [L]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]
于 2012-09-17T12:39:56.133 に答える
0

フォーラムのフォルダに htaccess ファイルを入れてみてください:

RewriteEngine On

ルールなし。これにより、親ディレクトリのルールが適用されなくなります。

于 2012-09-17T17:36:31.433 に答える