2

私は本当にうんざりしています。きれいなパーマリンクを取得するためにあらゆることを試みましたが、それでも500またはオブジェクトが見つからないというメッセージが表示されます。私はまだそれをローカル環境で動作させようとしています。私のhttp.confファイルとファイルのすべてにオーバーライドを設定しhttp-xammp.conf、FollowSymLinksを配置しました。これが私の.htaccessファイルです。

Options -Indexes
Options +FollowSymLinks

# BEGIN WordPress

RewriteEngine On
RewriteBase /xampp/wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^(.+)$ /?file_name=$1  [L,QSA]
RewriteRule ^([^/]+/[^/]+)/([^/]+)/([^/]+)(/.+)?$ $1$4?$2=$3 [QSA,N]
RewriteCond $1 !.+\.xyz$
RewriteRule ^([^/]+/[^/]+)$ $1.xyz [L]

# END WordPress

しかし、私はまだエラーで終わります!私はhtaccess全体に慣れていないので、どんな助けでも大歓迎です。

私が今得ているエラーは次のとおりです。

"C:/xampp/htdocs/xampp/wordpress/.htaccess:RewriteEngineはここでは許可されていません。リファラー: http ://www.mydomain.com/xampp/wordpress/wp-admin/options-permalink.php "

しかし、私は管理者であり、完全に制御できますか?何かご意見は?

4

2 に答える 2

4

発生しているエラーは、適切なオーバーライドがオンになっていないことを意味します。Htaccessファイルは、構成ファイルによって定義された設定を「オーバーライド」し、構成ファイルのAllowOverrideディレクティブは、htaccessファイルによってオーバーライドできる設定のタイプを決定します。Apache mod_rewriteのドキュメントでわかるように、 Overrideの各ディレクティブのリストがあります。つまり、構成でそれを設定する必要があります。

xampp設定ファイルのどこかにAllowOverrideディレクティブが表示されます。FileInfoそのリストに追加するか、次のように変更することができAllます。

AllowOverride FileInfo

また

AllowOverride All

これにより、htaccessファイルでmod_rewriteディレクティブを使用できるようになります。


編集:

どこに置けばいいの?私はどこにでもオーバーライドを許可します

のApacheドキュメントをAllowOverride見てください<Directory>。コンテナに入れる必要があります。だからこのようなもの:

<Directory "/path/to/your/xampp/wordpress">
    AllowOverride All
</Directory>

「/path/ to / your / xampp / wordpress」が、 URIパス(たとえば、URLに表示されるパス)ではなく、htaccessファイルがある絶対的な物理ファイルパスであること確認する必要があります。 。これは、htaccessファイルがにあることを意味します。/path/to/your/xampp/wordpress/.htaccess

于 2013-01-12T08:17:01.983 に答える
2

ここでの問題は、フォルダ内にフォルダがあることだと思いhtdocs/xampp/ます。私が正しく覚えていれば、XAMPPはこのフォルダを特定の方法で設定しており、それが問題を引き起こす可能性があります。wordpressフォルダをフォルダに移動するhtdocsと、期待どおりに機能するはずです

于 2013-01-24T13:23:16.183 に答える