web-dev-qa-db-ja.com

移行後、リモートサーバーからログに記録できないため、エラー 'このページへのアクセスは許可されていません'

(Drupal 8)私のローカル環境からは、管理者ユーザーでのロギングについて問題はありません。

しかし、ローカルサーバーからリモートサーバーに移行した後、任意のユーザー(および管理者)でログインすると、ユーザーページ(/ user/x、xは数値)にリダイレクトされますが、次のエラーメッセージが表示されます。

このページにアクセスする権限がありません

enter image description here

ページを更新すると、ユーザーのログインページに自動的にリダイレクトされます。理由がわかりません。

自分のデータベースから、ログに記録すると新しいセッションが表示されます。そして、ウォッチドッグは使用された接続のみを表示し、アクセスは拒否されました。

$drush wd-show

25136  27/Dec 00:18  access denied   warning   /user/1
25135  27/Dec 00:18  user            notice    Session opened for okli

誰かが私を助けることができますか?

ログイン後、ブラウザにCookieがないことに気づきました。たぶん問題はこれですが、Drupalログインセッションの専門家ではありません。

移行中に、サーバー構成を変更しました。以前は、WebサイトはSSL証明書を使用していました。証明書を削除しました(Webサイトはhttpです)。私は思いませんが、新しいサーバー構成が問題の原因である可能性があります。

UPDATE:私のステップとログ

1)データベースから、セッションとフラッドテーブルを切り捨てます

2)Firefoxブラウザを使用しています。登録されているすべてのCookieを空にします

3)/var/log/Apache2/access.log、/var/log/Apache2/error.logおよび/var/log/mysql/error.logをシェルから「tail -f」で開いて、ロギンに移動しますFirefoxのページ( http://xxx.xxx.xxx.xxx

enter image description here

4)管理者名とパスワードを入力し、ログインフォームを送信します。アクセス拒否ページに移動します。

enter image description here

5)ログファイルが表示されます。

enter image description here

6)ブラウザのCookieには次の値があります。

enter image description here

7)テーブルセッションに1つのエントリがあります。

enter image description here

私のCookie値とデータベースエントリは同じではありませんか?ログインプロセスをデバッグするためにどのように/する必要がありますか?

以下、私のApache2.confファイルの内容:

Mutex file:${Apache_LOCK_DIR} default

PidFile ${Apache_PID_FILE}

Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

User ${Apache_RUN_USER}
Group ${Apache_RUN_GROUP}

HostnameLookups Off

ErrorLog ${Apache_LOG_DIR}/error.log

LogLevel debug

IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

Include ports.conf

    LimitRequestBody 204800
    FileETag None
    <IfModule mod_headers.c>
        Header always append X-Frame-Options SAMEORIGIN
        Header set X-XSS-Protection "1; mode=block"
        Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
    </IfModule>
    RewriteEngine On
    RewriteCond %{THE_REQUEST} !HTTP/1\.1$
    RewriteRule .* - [F]

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Require all denied
</Directory>

<Directory /usr/share>
    AllowOverride None
    Require all granted
</Directory>

<Directory /var/www/>
    Options -FollowSymLinks -Includes -ExecCGI
        AllowOverride None
        Require all granted
</Directory>

AccessFileName .htaccess

<FilesMatch "^\.ht">
    Require all denied
</FilesMatch>

LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

IncludeOptional conf-enabled/*.conf

そして、私の/ect/Apache2/sites-enabled/xxx.confファイル(confファイルは1つしかありません):

<VirtualHost *:80>

    ServerAdmin webmaster@localhost
    ServerName xxx.xxx.xxx.xxx  
    DocumentRoot /var/www/drupalmaindir

    ErrorLog ${Apache_LOG_DIR}/error.log
    CustomLog ${Apache_LOG_DIR}/access.log combined

        <Directory /var/www/drupalmaindir>
            Options FollowSymLinks
            AllowOverride All
            Require all granted
    </Directory>
</VirtualHost>

私のdrupalウォッチドッグ:

enter image description here

私の間違いはどこにあるのかわからず、なぜdrupalウェブサイトに接続できないのですか...:/

:移行中に、Apache Webサイトの設定を変更しました。以前は、Webサイトでssl証明書(https)を使用していましたが、証明書を削除します(Webサイトはhttpにあります)。

2
matthieu lopez

"アクセスが拒否されました"のkingfisher64によると、 "このページへのアクセスは許可されていません"エラー???

誰かがこの問題につまずいた場合に備えて、私のための解決策はsettings.phpにありました。ウェブサイトをあるドメインから別のドメインにコピーしましたが、ファイルの下部にある次の設定は変更していません。

$cookie_domain = 'newwebsitenamehere.com';

注:http://www.もないことに注意してくださいはありませんこれらを入れてください。


Update:OPerがコメントしました:

移行中に、Apache Webサイトの構成を変更しました。以前は、Webサイトでssl証明書(https)を使用していましたが、証明書を削除します(Webサイトはhttpにあります)。

また、settings.phpで探す別のことは、コメントが外されている場合の$base_urlです(最初に#がない)正しいドメイン名であることを確認します(ドメイン名がこの新しいサーバーをすでにポイントしていると仮定します。このサーバーが指すドメイン名を持たない場合それをコメントアウトしてから、この行をコメントアウトします)、また、SSLを使用していないため、https://がある場合はsも削除します。

例:

enter image description here

または、SSLがないため、#を追加してコメント化することができます。

enter image description here

2
No Sssweat