webdevqa.jp.net

index.phpをURLから削除する方法は?

MagentoインストールのすべてのURLには、次のようなindex.phpが必要です。

http://example.com/index.php/admin/
http://example.com/index.php/customer/account/login/

問題は、システムがデフォルトで次のようなURLにリンクすることです

http://example.com/admin/
http://example.com/customer/account/login/

とにかくきれいに見えます。これは.htaccessの書き直しの問題だと思いますが、過去にそれをいじくり回すことで500が得られたので、まずは皆さんにお聞きしたいと思います。

SEO設定の変更、構成キャッシュのフラッシュ、およびURLの再インデックス付けは機能しませんでした ここで提案されているように

30
delwin

これは古いかもしれませんが、私が学んだことを書き留めることもできます。とにかく、私はこのようにしてやった。

---------->

開始する前に、Apache書き換えモジュールが有効になっていることを確認してから、以下の手順に従います。

1)Magento管理エリアにログインして、システム>設定> Webに移動します。

2)nsecureおよびSecureタブに移動します。 nsecuredおよびSecure-Base Urlオプションにドメイン名が含まれていることを確認し、最後にスラッシュを付けないでください。 URL。例: http://www.yourdomain.co.uk/

3)Webページで、検索エンジン最適化タブに移動し、[〜#〜] yes [〜#〜]の下を選択しますWebサーバーの書き換えを使用オプション。

4)再度Secureタブに移動し(まだない場合)、フロントエンドでセキュアURLを使用オプションでYesを選択します。

5)次に、Magento Webサイトフォルダーのルートに移動し、.htaccessに次のコードを使用します。

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

.htaccessを保存し、元のファイルを置き換えます。 (それを処理する前に、元の.htaccessファイルをバックアップしてください!!!)

6)次に、システム>キャッシュ管理に移動してすべてのフィールドを選択し、アクションドロップダウンが更新に設定されていることを確認してから送信します。 (これはもちろんキャッシュを更新します。)

---------->

これでうまくいかなかった場合は、これらの追加手順に従ってください。

7)システム>設定> webに再度移動します。今回はCurrent Configuration Scopeを探し、ドロップダウンメニューからWebサイトを選択します。 (これはもちろん、デフォルト構成に設定されています)

8)nsecureおよびSecureフィールドに、以前のデフォルト構成ファイルと同じドメインが含まれていることを確認します。

9)検索エンジン最適化タブに移動し、Webサーバーの書き換えを使用セクションの下にあるはいを選択します。

10)URLが同じになり、書き換えが有効になったらそのページを保存し、戻ってすべてがデフォルトとしてチェックされていることを確認し、必要に応じて再度保存します。

11)手順6を繰り返します。

これで、index.phpの問題は修正され、すべてうまくいくはずです!!!

これがお役に立てば幸いです。

86
Blowtar

以下の手順に従ってください。

ステップ1:サイトのルートフォルダーに移動すると、.htaccessファイルがあります。テキストエディタで開き、#RewriteBase /magento/行を見つけます。それを#RewriteBase /に置き換えるだけで、 'magento /'だけを取り出します

ステップ2:管理パネルに移動して、Rewrites(set yes Use Web Server Rewrites)を有効にします。システム->設定-> Web->検索エンジン最適化で見つけることができます。

ステップ3:次に、キャッシュ管理ページ(システムキャッシュ管理)に移動し、キャッシュを更新して更新してサイトを確認します。

25
Sankar Subburaj

クリーンなURLを機能させるには、Apacheでmod_rewriteを有効にする必要があります

mod_rewriteがphpinfoにない場合は、インストールする必要があります

Sudo a2enmod rewrite
Sudo Apache2ctl -l

AllowOverride noneの出現をAllowOverride allに置き換える必要があります(/ etc/Apache2/sites-enabled/000-default内)

Apacheを再起動します

Sudo service Apache2 restart

Magentoの管理者でSystem > Configuration > Web > search engine Optimizationに移動し、「Use Web Server Rewrites」をYesに変更します

9
Akhilraj N S

あなたの.htaccessでこれはどうですか:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
7
ErJab

他の解決策がうまくいかない場合は、これを試してください:

ステップ1:(インストールがwebrootにある場合)

交換

    #RewriteBase /magento/

    RewriteBase /

ステップ2:

次の行を追加します(バックエンドが内部でindex.phpを必要とするため、adminを除外します)

RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.yourdomain.com/$1 [R=301,L]
RewriteRule ^index.php/(admin|user)($|/) - [L]
RewriteRule ^index.php/(.*) $1 [R=301,QSA,L]

直後の

RewriteRule .* index.php [L] 

これは私のために働く

それでも動作しない場合は、Magentoの設定を再確認してください:System-> Configuration-> Web-> Search Engine Optimization。書き換えを有効にする必要があります。

2
Stefan Diabo

こんにちは、私はパーティーに遅れています.. http://davidtsadler.com/archives/2012/06/03/how-to-install-magento-on-ubuntuからの指示を指摘したかっただけです/ は本当に役に立ちました。

Ubuntu、Apache、MySql、Phpがインストールされているので、見出しにジャンプできると思ったので、Magentoを提供するディレクトリを作成します OPと同じ問題が発生しました。つまり、すべてのURLで 'index.php'が必要でした(または404が見つかりません)。次に、Apache HTTPサーバーのインストールと設定に戻り、Apacheを再起動した後、完全に動作します。

参考のために、私は行方不明でした:

Sudo bash -c "cat >> /etc/Apache2/conf.d/servername.conf <<EOF
ServerName localhost
EOF"

...そして

Sudo a2enmod rewrite
Sudo service Apache2 restart

お役に立てれば

2
Jonno

投稿のすべてを試しましたが、何も機能しませんでした。次に、ErJabが読むように設定した.htaccessスニペットを変更しました。

RewriteRule ^(.*)$ 'folder_name'/index.php/$1 [L]

上記の行で修正されました。ここで、* folder_name *はmagentoルートフォルダーです。

お役に立てれば!

1
nanyaks

主に「Ubuntu」などのLinuxベースのシステムを使用しており、これはサーバーではなくlocalhostユーザーにのみ推奨されます。

前の回答に記載されているすべての手順に従います。 +

Apache設定をチェックインします。 (AllowOverride All)AllowOverrideの値がnoneの場合、Allに変更し、Apacheを再起動します。

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

このステップが誰かに役立つかどうか教えてください。早く見つければ時間を節約できるので。

enter image description here

Localhostのhtaccessファイルから正確な行を追加しています。ご参考までに

行番号110付近

<IfModule mod_rewrite.c>

############################################
## enable rewrites

Options +FollowSymLinks
RewriteEngine on

############################################
## you can put here your magento root folder
## path relative to web root

#RewriteBase /

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

画像は、テキストからの画像から簡単に理解できるユーザー向けです。

enter image description here

1