Magento 2:500内部サーバーエラー


10

以下のMagento dev docsに従いました:

新しい.htmlテンプレートを追加して編集した場合、変更は次のことを行うまで適用されません。pub/ static / frontendおよびvar / view_preprocessingディレクトリ内のすべてのファイルを削除してから、ページをリロードしてください。ファイルを手動で削除するか、CLIでgrunt clean:コマンドを実行できます。MagentoでのGruntの使用の詳細については、Gruntのインストールと構成を参照してください。

しかし、htaccessを介して設定された開発者モードでは、サイトおよび管理URLで内部サーバーエラー500が発生します。クリアするファイルを探してレンダリングする場合、それはキャッシュの問題ですか?


2
エラーログを確認してください。
MagenX 2016

内部サーバー500はファイルのアクセス許可が原因で発生し、フォルダーに755を、ファイルに644を与えるだけです
Alam Zaib

回答:


11

開発者モードでは、ファイルは要求されたときに自動的に生成され、見つからなかった。したがって、これは問題にはなりません。

500エラーが発生した場合、最初に行うべきことは、Webサーバーのエラーログを検索することです。

Apacheで実行すると、ほとんどの場合、次の2つの場所のいずれかにあります。

/ var / log / httpd /-> centos、archlinux ...

/ var / log / apache2 /-> debian、ubuntu ...


5

Magentoのルートで次のコマンドを実行してみてください。このコマンドを実行する前に、インストールディレクトリに完全な権限を付与してください。

php bin/magento setup:static-content:deploy -f

2

CentOS 7では、次のコマンドを使用してファイアウォール設定を無効にしました。

$ setenforce 0

以上です。問題は解決されます。を使用するとRHEL 7 and CentOS 7、SELinuxはシステムのセキュリティを強化しますが、Linux以外の人々に多くの課題をもたらします。


2

解決策:内部サーバーエラー!! Magento 2.2.2非常に重要です!! 特にWindows10のWAMPserverの場合

  1. LoadModule version_module modules / mod_version.soがhttpd.confからロードされていることを確認してください。このバグにより、Magento 2.2.2の内部サーバーエラーが発生し、次の設定が "#"の場合、plsは "#"を削除します

LoadModule version_module modules / mod_version.so

  1. 新しいフォルダを作成し、/ pub /の後に「静的」という名前を付けます。http:// localhost / magento222 / pub / static / 「静的」フォルダを右クリックし、プロパティをクリックして、書き込み可能かどうかを確認します。

  2. magento222の古いmysqlデータベースを削除し、新しいデータベースを作成して、クリーンで安全なインストールを作成します。

PS:Ver。2.2.2は安定版ではありません。


2

モジュールの.htaccess first.possibilityが有効になっていないことを確認してください。mod_versionモジュールが原因でこの問題に直面したので、Apacheから有効にして、現在は機能しています。

.htaccessファイルを置き換えるか、名前を変更して.htaccessファイルの問題を確認することもできます。

ありがとうございました


2
.htaccessファイルを置き換えて問題を解決しました。ありがとう
Sagar Dobariya

1
  1. また、ファイルの権限が間違っている可能性もあります。
  2. あなたがCHMODすることを確認してください "user":"group" "magento install DIR"

1

朝も同じ状況に遭遇しましたが、@ davidの回答に感謝します。

Apacheのログディレクトリを少し調べたところ、apacheにはapp / etc /フォルダーを読み取る権限がないことがわかりました。

だから、許可を与えた後はすべてうまくいきます。


1
パスを教えてください。
jafar pinjar

Linux環境を使用している場合、通常は/ var / log / apache2または/ var / log / httpd /になります
Deepanshu Jain

1

私の場合、それは所有権の問題によるものです。私はubuntu osを使用していたため、次のコマンドを使用して所有権を修正しました。

sudo useradd magento

このmagentoユーザーをWebサーバーのユーザーグループに関連付けます。ubuntuではデフォルトでwww-dataです

sudo usermod -g www-data magento

ターミナルでMagentoプロジェクトディレクトリに移動し、次のコマンドを実行します。

sudo find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \; sudo find var vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \; sudo chown -R magento:www-data . sudo chmod u+x bin/magento

これらのコマンドが正常に実行されると、magentoユーザーはMagentoのセットアップに必要なすべての必要な権限を取得します。

次のコマンドでApacheサーバーを再起動します

sudo systemctl restart apache2


あなたのコードは私に私のpubliv_htmlフォルダーの所有権を失い、内部のすべてを失うことになりました。問題のある人は誰でもこのコマンドを実行してchanesを元に戻す必要がありcat /etc/trueuserdomains | awk '{print $2}' ます。> chown $ i.mail / home / $ i / etc -R; > chown $ i.nobody / home / $ i / public_html; > chmod 750 / home / $ i / public_html; >完了。
デッドガイ

@TheDeadGuy、それは古すぎるコメントでした。申し訳ありませんでした。回答を編集しましたので、これを試してください。
Mukesh Ojha

あなたは赦され;)
デッドガイ


0

Magento 2.2.4を使用している場合。次に、最初にApacheログディレクトリに移動し、

[Wed May 30 00:58:17.857269 2018] [core:alert] [pid 7184:tid 1244] [client 127.0.0.1:65528] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 00:58:42.568180 2018] [core:alert] [pid 7184:tid 1248] [client 127.0.0.1:49165] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 00:59:01.667499 2018] [core:alert] [pid 7184:tid 1252] [client 127.0.0.1:49169] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 01:00:04.655715 2018] [core:alert] [pid 7184:tid 1272] [client 127.0.0.1:49174] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 30 01:00:35.151803 2018] [core:alert] [pid 7184:tid 1272] [client 127.0.0.1:49201] C:/Creation/wamp64/www/m2version/ms-live-version/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration

ログによると、主な問題は.htaccessファイルです。正確な理由はわかりませんが、.htaccessファイルから削除する次のコードが機能しています。

ファイルタグコードを削除します。

<Files composer.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files composer.lock>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .gitignore>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .htaccess>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .htaccess.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .php_cs.dist>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files .travis.yml>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files CHANGELOG.md>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files COPYING.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files Gruntfile.js>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files LICENSE.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files LICENSE_AFL.txt>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files nginx.conf.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files package.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files php.ini.sample>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files README.md>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files auth.json>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>
<Files magento_umask>
    <IfVersion < 2.4>
        order allow,deny
        deny from all
    </IfVersion>
    <IfVersion >= 2.4>
        Require all denied
    </IfVersion>
</Files>

注:今後問題が発生するかどうかはわかりません。しかし、それは私を助けます。


0

1時間苦労し、プロキシ設定を削除した後、最終的に問題が解決しました。この問題に直面している人は誰でも、プロキシ設定を確認してください。



0

それは非常に洗練された問題です。

これには多くの理由が考えられます。ランダムに行くよりも、問題をデバッグします。

/ var / log / apache2に移動するためにapache2を使用していて、error.logが見つかった場合、その他の場所では、これが発生している特定の理由が見つかります。そして、インターネットで検索して解決しました。

考えられる問題:

  • 既存のサイトからファイルとデータベースをコピーし、新しいサーバーに直接配置すると、いくつかの互換性の問題が発生する可能性があります。これは、freashのコピーをアップロードしてインストールしようとすると、不足しているものが見つかります
  • 新しいMagentoバージョンには、generatedという特別なフォルダーがあります。それは書き込み許可でなければなりません。
  • もう1つの主な理由は、全体的なファイル権限です。必ずVAR、生成された、ベンダー、アプリの/ etc、パブ/メディア&パブ/静的が適切な書き込みアクセス権を持っています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.