web-dev-qa-db-ja.com

デフォルトのパーマリンクだけが動いています。

私の問題は私のワードプレスサイトにあるデフォルトのパーマリンクだけが動いていることです。

パーマリンクをpostnameに変更すると、.htaccessの内容は

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

そしてデフォルトでは

# BEGIN WordPress
# END WordPress

またこれを使ってmod_rewriteのステータスを取得しようとしました

in_array( 'mod_rewrite', Apache_get_modules() )

それは1を返し、mod_rewriteは私のサーバーで有効になっています。私はこの問題を解決するために私を助けてください。私のホスティングサーバーはgodaddyです。

1

GoDaddyは、.htaccessファイルに加えた変更がすぐには行われないという点で、私が見たホストの中ではユニークです。彼らはいくつかの方法で彼らのためにいくつかのキャッシングシステムを使います。

パーマリンクをオンにして一日待ちます。私がかつてそこでホストされていたとき、それは過去に私のために働きました。

1
Otto

私たちは同じ問題を抱えていましたが、デフォルトのパーマリンクだけがApacheのmod-rewriteを有効にして働いていました。

他のソースでは 'Directory "var/www/html"のAllowOverrideを' None 'から' All 'に微調整していましたが、これはデフォルトのパーマリンク以外が選択された場合にのみ500エラーになりました。

一晩寝た後で、http.confファイルをよく見直してPidFileセクションでこれを見ました...

    PidFile run/httpd.pid

'find/-name httpd.pid'を実行すると、これが正しいパスではないことがわかりました。したがって、変更しました...

    PidFile /var/run/httpd/httpd.pid

ファイルを保存し(AllowOverrideをAllに設定しても)、Apacheを再起動します。

    service httpd restart

デフォルトのパーマリンクはすでにWPに設定されているので、別のパーマリンクを選択し、保存して...

みんな元気で….

:-)

0
Learning