ホームページ  >  記事  >  CMS チュートリアル  >  phpcms v9 が重複した名前を渡せない場合はどうすればよいですか?

phpcms v9 が重複した名前を渡せない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2020-02-05 09:57:382031ブラウズ

phpcms v9 が重複した名前を渡せない場合はどうすればよいですか?

phpcms v9 が同じ名前で渡せない場合はどうすればよいですか?

シナリオ: phpcms v9 で PHPSSO が通信できない問題の解決策 (PHPSSO が通信できないことは、「重複した名前を渡すことができない」という phpcms v9 登録メンバーに間接的に影響します)

通常の状況では、ほとんどの人はこれを実行します:

ローカルに仮想環境を作成し、localhost または 127.0.0.1 を使用して V9 システムをインストールします。ローカル通信には問題がないため、ローカル データのバックアップを作成します。その際、ドメイン名を使用してリモートインストールを行い、ローカルデータをリモートサーバーに直接復元していましたが、この場合、SSO と V9 システムが通信できなくなることがよくありました

バックアップ内のデータによる 保存されたリンクは、URL が localhost または 127.0.0.1 またはローカル マシン 192.168.xxx.xxx であり、ドメイン名と一致しません。たとえば、SSO は www.lanrensc.com に対応します。 、データ復旧後の V9 システムは localhost または 127.0.0.1 に対応します。この 2 つが一致しない場合、当然通信できなくなります。これは最も一般的な理由の 1 つであり、通常は公式の方法に従って解決できます。

もちろん、公式の方法で問題を解決できないことがわかった場合は、V9Cache と SSO を含むディレクトリ内のすべてのソース コードに従って、ローカル V9 を使用してリモート V9 を直接上書きすると推定されます。インストールによりキャッシュが生成されるので知っておくべき ローカルマシンとサーバーのキャッシュに記録されるデータベース情報が異なるため、特に権限制限が厳しいLinuxシステムでは正規の方法を使用しても通信できないことが多い.

理由 2: ローカル マシンの V9 キャッシュと SSO のキャッシュにより、サーバーの対応するファイルが上書きされます。これは、通信失敗の 2 番目に一般的な理由です。キャッシュ: \caches\configs\ および \phpsso_server\caches\configs ディレクトリ内のシステム。.php および database.php、具体的な変更方法については詳しく説明しません。設定ファイル datebase.php が次のディレクトリにあるかどうかを確認できます。キャッシュは必要なデータです。

上記の 2 つの理由に加えて、次の 2 つの可能性が考えられます。

まず、Linux サーバーの場合、Web サイトのディレクトリの権限が正しく設定されていないため、Web サイトが使用できなくなる可能性があります。

#2 番目に、www を含むドメイン名と www を含まない 2 つのドメイン名は、同時に同じサーバーを指します。V9 のインストール時に、www のないトップレベル ドメイン名がインストールされている場合、ローカル マシンはwww.lanrensc.com を使用しているため、この場合通信は失敗します

特に 2 番目の理由は、多くの人が無視している可能性があります。 WWW を持っているかどうかに関係なく、SSO はそれらを 2 つの異なるアプリケーションとして認識します。当然、異なるアプリケーション間で通信することはできません。 。 。

V9 と SSO 間の通信の問題を回避するには、次のことを行うことをお勧めします:

1. ローカル データをサーバーに復元する必要がない場合は、テンプレート ファイルを直接アップロードするだけです。リモート キャッシュ フォルダーを上書きしないでください。

2. サーバーに復元する必要があるデータがローカル マシン上にある場合は、次の 3 つのプレフィックスを含むテーブルを保存しないでください。ローカル データを保存する場合は v9_admin、v9_member、および v9_sso。V9 をリモートでインストールする場合は、新しいインストールを使用します。インストールが完了したら、\caches\bakup\default\ にある SQL バックアップとテンプレート パッケージ

3 のみをアップロードしてください。 www を使用する場合と www を使用しない場合が多いことに注意してください。たとえ同じサーバーを指していても、SSO はそれらを 2 つの異なるアプリケーションと見なします。主に www を使用する場合は、V9 のインストールに www を使用することを忘れないでください。

4, Linux サーバーは、V9 のインストール ディレクトリの権限に注意してください。FTP アップロードにはバイナリ アップロードを使用してください。サーバーが独立したホストであり、root 権限がある場合は、次のことはお勧めしません。アップロードには root 権限を持つアカウントを使用してください。代わりに、サイトの関連付けられたアカウントを使用して、V9 プログラムをアップロードします。

SSO 通信の問題を解決する新しい方法は次のとおりです:

v9_admin、v9_member、v9_sso の 3 つのプレフィックスを含まないテーブルのデータ バックアップを作成します (ローカルかサーバー上かは関係ありません)、サーバーに新しい V9 をインストールします(最新の V9 の install、cache、および phpssoserver ディレクトリを使用して、サーバー上の同じ名前のフォルダーを上書きし、キャッシュ内の install.lock ファイル) を確認して、これを確認します。新しくインストールされた V9 通信は成功するため、以前のバックアップを復元するだけです。

PHP 中国語 Web サイト、多数の無料

PHPCMS チュートリアル 、オンライン学習へようこそ!

以上がphpcms v9 が重複した名前を渡せない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。