3

私はJoomlaとWAMP環境の初心者です。私はWAMP環境を使用しています:

  • SP2および最近のすべてのアップデートでSrv2003R2(Std Ed)を獲得
  • Apache 2.2.9
  • PHP 5.2.6
  • Joomla 1.5.14

Joomla SEF URLでmod_rewriteを有効にしたいのですが、一緒に機能していません。

  • 「SEFURL」と「URLにサフィックスを追加」を「はい」に設定すると、機能します。
    結果:/index.php/page.html

  • 「mod_rewrite」と「URLにサフィックスを追加」を「はい」に設定すると、エラーは発生しません(想定どおりに機能するかどうかはわかりません)。
    結果:/index.php?option=com_content&view=article&id=3&Itemid=5

  • 「SEFURL」と「mod_rewrite」を「はい」に設定すると、「404NotFound」エラーが発生します。
    結果:見つかりません| 要求されたURL/pagenameがこのサーバーで見つかりませんでした

  • 「SEFURL」+「mod_rewrite」+「URLにサフィックスを追加」を「はい」に設定すると、「404NotFound」エラーが発生します。
    結果:見つかりません| 要求されたURL/pagename.htmlがこのサーバーで見つかりませんでした

Joomlaが提供するデフォルトの.htaccessを使用しています。コードは次のとおりです。

 

##エラーが発生した場合は、コメントアウトできます。上記の注を参照してください。
オプション+FollowSymLinks

#
#使用中のmod_rewrite

RewriteEngineオン


##########開始-ルールを書き直して、いくつかの一般的なエクスプロイトをブロックします
##サイトで問題が発生した場合は、以下の操作をブロックしてください
##これは、Joomla!への最も一般的なタイプのエクスプロイトの「試み」をブロックしようとします。
#
#URLを介してmosConfig値を設定しようとするスクリプトをブロックします
RewriteCond%{QUERY_STRING} mosConfig_ [a-zA-Z _] {1,21}(= | \%3D)[OR]
#URL経由で送信するためにbase64_encodeがらくたをしようとしているスクリプトをブロックします
RewriteCond%{QUERY_STRING}base64_encode。*\(。* \)[または]
#URLにタグを含むスクリプトをブロックする
RewriteCond%{QUERY_STRING}(\ |%3E)[NC、OR]
#URLを介してPHPGLOBALS変数を設定しようとするスクリプトをブロックします
RewriteCond%{QUERY_STRING} GLOBALS(= | \ [| \%[0-9A-Z] {0,2})[OR]
#URLを介して_REQUEST変数を変更しようとするスクリプトをブロックします
RewriteCond%{QUERY_STRING} _REQUEST(= | \ [| \%[0-9A-Z] {0,2})
#ブロックされたすべてのリクエストを403 Forbiddenエラーでホームページに送信してください!
RewriteRule ^(。*)$ index.php [F、L]
#
##########終了-いくつかの一般的なエクスプロイトをブロックするようにルールを書き直します

#WebサーバーのURLの場合は、次の行のコメントを解除します
#は物理​​ファイルパスに直接関係していません。
#Joomlaを更新してください!ディレクトリ(ルートのみ/ルート用)

 RewriteBase / abc  
#/ abcは、htdocsにあるjoomlainstallのサブディレクトリです。

##########開始-Joomla!コアSEFセクション
#
RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME}!-d
RewriteCond%{REQUEST_URI}!^ / index.php
RewriteCond%{REQUEST_URI}(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$[NC]
RewriteRule(。*)index.php
RewriteRule。*-[E=HTTP_AUTHORIZATION:%{HTTP:Authorization}、L]
#
##########終了-Joomla!コアSEFセクション



httpd.confで

  • 私はLoadModule rewrite_module modules/mod_rewrite.soアクティブです(コメントなし#
  • Apacheのmodulesフォルダーにmod_rewrite.soがあります。

それを機能させるために他に何をする必要があるのか​​わかりません。ほぼすべてのフォーラムの投稿とブログを確認しました。しかし、何も助けにはなりません。

PHP_MAILERの問題もありますが、これほど重要ではありません。私はあなたの助けに感謝します。この問題を解決するために詳細が必要な場合はお知らせください。

敬具

DM

4

1 に答える 1

8

私は自分の問題に対する答えを見つけました:httpd.confにディレクトリを追加しましたが、.htaccessを有効にするために、AllowOverrideがAllではなくNoneに設定されました。

.htaccessでapacheを使用するには、AllowOverrideAllが必要です。コードは次のようになります。

<ディレクトリ"D:/ Apache / htdocs / joomla">
    すべて許可オーバーライド
    オプションなし
    注文許可、拒否
    すべてから許可する
</ディレクトリ>

上記の変更に加えて、「RewriteBase /」
(オンに設定、つまりRewriteBase /のコメント解除)が必要です。

于 2009-10-15T19:02:25.270 に答える