XPressME Integration Kit

フォーラム

Re: WordPressからのログイン

#3511
匿名
ゲスト

連続ですみません。

再び別件なのですが、Wordpressの一般設定にて、

WordPressアドレス と サイトアドレス が違う場合の挙動についてです。

具体的には、WordPressアドレスはhttp://example.com/xoops_root_path/modules/xpressme/、

サイトアドレスを http://example.com/blog/ のように変更しました。

※実際にはサーバ上に「blog」というディレクトリは存在しません。

この時、XOOPSの管理者ユーザーでhttp://example.com/blog/にアクセスすると、


WordPress のアドレス (URL)にアクセスできません。

 WordPress address (URL) http://example.com/xoops_root_path/modules/xpressme

 to

 http://example.com/blog(テキストボックス)

WordPressのブログのアドレス (URL)とアクセスURLが異なっています。

 Blog address (URL) http://example.com/blog

 to

 http://example.com/blog(テキストボックス)

 変更を保存(ボタン)


元のhttp://example.com/xoops_root_path/modules/xpressme/にアクセスすると、


WordPressのブログのアドレス (URL)とアクセスURLが異なっています。

 Blog address (URL) http://example.com/blog

 to

 http://example.com/xoops_root_path/modules/xpressme(テキストボックス)

 変更を保存(ボタン)


このように表示され、Wordpressの公開ページへアクセスできませんでした。

XOOPS側から、Wordpress管理ページへアクセスすることは可能ですが、

その時のURLは「http://example.com/xoops_root_path/modules/xpressme/wp-admin/」です。

「http://example.com/blog/wp-admin/」と手動でアクセスすると、.htaccessのmod_rewriteの影響か、http://example.com/xoops_root_path/user.php?op=confirm で永久ループして画面が変わることがありませんでした。

.htaccessの記述ですが、以下のようになっています。

http://example.com/ に設置しているmod_rewrite

<code>RewriteEngine on<br />
RewriteCond %{REQUEST_FILENAME} !-f<br />
RewriteCond %{REQUEST_FILENAME} !-d<br />
RewriteBase /xoops_root_path<br />
RewriteRule blog/(.*)$ /xoops_root_path/modules/xpressme/$1 [L]</code>

http://example.com/xoops_root_path/ に設置しているmod_rewrite

<code>RewriteEngine on<br />
RewriteRule ^xoops_root_path/modules/xpressme/(.*)$ blog/$1 [R=301,L]</code>

http://example.com/xoops_root_path/modules/xpressme/ に設置しているmod_rewrite

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

http://example.com/xoops_root_path/ の.htaccessは不要かと思ったのですが、

リダイレクトさせるために設置しました。

これの影響で永久ループが発生したのかと思いましたが、削除しても変わりませんでした。

http://example.com/xoops_root_path/modules/xpressme/ の記述は、念のために設置アドレス用と変更したURL用の2パターンを記述しています。

現状の問題点として、XOOPS管理ユーザーがhttp://example.com/blog/配下全てにアクセスできなくなる。

http://example.com/blog/wp-admin/ にアクセスすると、永久ループになる

http://example.com/xoops_root_path/modules/xpressme/の場合は、wp-admin以外には全て先述のエラーが表示される。

尚、XOOPS管理権限の無いユーザーがログインしてる状態の場合、http://example.com/blog/配下全てに正常にアクセスできました。

何故か?先に質問させて頂いた、記事ページなどからのログインでも、うまくログインされたままリダイレクトされました。

未ログインユーザーも同様にアクセス可能です。

但し、ktai-style ではログインができませんでした。

(ktai-styleでのログインURLはsite_urlを使っていましたが、該当箇所をhome_urlに変更してもログインできませんでした)

かなり長くてわかりづらいかと思いますが、もしおわかりになりましたらご教示いただけますと幸いです。

宜しくお願い致します。