0

ローカルホストではすべて問題ありません。

しかし、/public_html/site フォルダーにメインの WordPress サイトがあるホスティングがあります。/public_html/site/BETA に htaccess がない別の PHP サイトがあります。

ここでログインできます: http://yoursocialtool.com/BETA/login.phpユーザー: スタック パスワード: オーバーフロー 問題は、 http:// のような同じページへのフォーム送信を使用して、ログイン後にログアウトしようとするときです。 yoursocialtool.com/BETA/dashboard.phpそれは言う:

404 ページが見つかりません!

しかし、ブラウザのアドレスバーhttp://yoursocialtool.com/BETA/dashboard.phpに URL を直接入力すると、404 エラーなしで正常に読み込まれます。

/public_html の .htaccess:

RewriteOptions inherit

RewriteEngine on
RewriteCond %{HTTP_HOST} ^yoursocialtool.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.yoursocialtool.com$
RewriteCond %{REQUEST_URI} !site/
RewriteRule (.*) /site/$1 [L]

/public_html/site の .htaccess:

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

# END WordPress

これが私のdashboard.phpで使用しているコードです:

<?php
error_reporting(E_ALL);
ini_set('display_errors','On');
ini_set('error_log','error.log');
require("config.inc.php");
require("__require_login.php");
require_once("_isconnected.php");
if (isAppLoggedIn()){
    require("_dashboard.html.php");
} else {
    echo ($msg);
    ?>
    <script>
window.location = "./login.php?from=dashboard&location=";
window.location.assign("./login.php?from=dashboard&location=assign");
    </script>
    <?php
}
?>

私が直面している問題は、ログイン後にコードがサーバーで JavaScript リダイレクトを実行していないことです。ログアウトに成功したように見えますが、ログアウトリクエストを送信した後、実際にはdashboard.phpを取得していません。また、dashboard.php でログアウト アクションを処理しています。/public_html/site/index.php は、ログアウトの送信後にのみ処理しているようです。

注意: 私のローカルホストには、/public_html/site/BETA の下のサイトの一部しかありません。したがって、localhost には htaccess や wordpress がありません。

4

2 に答える 2