質問 > その他 > redirectできない件 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
along |
投稿日時: 2019/4/19 15:35
対応状況: 解決済
|
新米 登録日: 2019/3/22 居住地: 投稿: 3 |
redirectできない件 ▼テンプレート
[EC-CUBE] 4.0.2 [レンタルサーバ] レンタルサーバ名 [OS] centos7 apache2.4 [PHP] 7.1 [現象] リダイレクトしたいですが、.htaccessファイルで変更しても変わりません。 やりたいこと: https://ドメイン名/entryがきたらトップページに飛ばしたい ECCUBE/.htaccessは以下のようになっています <IfModule mod_rewrite.c> #403 Forbidden対応方法 #ページアクセスできない時シンボリックリンクが有効になっていない可能性あります、 #オプションを追加してください #Options +FollowSymLinks +SymLinksIfOwnerMatch RewriteEngine On # Authorization ヘッダが取得できない環境への対応 RewriteCond %{HTTP:Authorization} ^(.*) RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1] # さくらのレンタルサーバでサイトへのアクセスをSSL経由に制限する場合の対応 # RewriteCond %{HTTP:x-sakura-forwarded-for} !^$ # RewriteRule ^(.*) - [E=HTTPS:on] RewriteRule "^\.git" - [F] RewriteRule "^src/" - [F] RewriteRule "^app/" - [F] RewriteRule "^tests/" - [F] RewriteRule "^var/" - [F] RewriteRule "^vendor/" - [F] RewriteRule "^node_modules/" - [F] RewriteRule "^codeception/" - [F] RewriteRule "^bin/" - [F] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg|map)$ [NC] RewriteRule ^(.*)$ index.php [QSA,L] ######ここを追加##### RewriteBase / RewriteRule ^(.*)/entry$ https:/ドメイン名[R=301,L] </IfModule> 教えていただければ幸いです |
468 |
投稿日時: 2019/4/19 17:35
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: redirectできない件 RewriteRule ^(.*)$ index.php [QSA,L]
のルールが先に適用されているのではないでしょうか? eccube4が採用しているsymfomyは URLの内容を見て、処理する画面を判断する仕組み(ルーティング)を持っているので htaccessではなく、ルーティングの定義を変更した方が良いのではないかと思います。 entryを表示したくない理由は、新規会員登録をさせたくないといった要件でしょうか?
|
along |
投稿日時: 2019/4/22 10:20
対応状況: −−−
|
新米 登録日: 2019/3/22 居住地: 投稿: 3 |
Re: redirectできない件 追加した部分は
RewriteRule ^(.*)$ index.php [QSA,L] の前に書いても、後に書いても変わりはありませんでした。。。 ただし、前に書いたときには RewriteRule ^(.*)$ index.php [QSA,L]をコメントアウトにしていないので、かぶっている可能性はあります。 そうですね、新規会員登録機能をさせたくないです。 .htaccessでコントロールができればいいなと思ったが、急ぎだったので、強制的に EntryController.phpで
一応トップへ飛べるようにできた。。。 |
umebius |
投稿日時: 2019/4/22 11:51
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: redirectできない件 .htaccessでリダイレクトするなら
RewriteRule ^entry$ / [R=301,L] ではないでしょうか? 下記の直前に記載します。 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg|map)$ [NC] RewriteRule ^(.*)$ index.php [QSA,L] --------- そもそもentryのルーティングをEC-CUBEから取ってしまっても良いでしょうね。
|
along |
投稿日時: 2019/4/22 17:13
対応状況: −−−
|
新米 登録日: 2019/3/22 居住地: 投稿: 3 |
Re: redirectできない件 ありがとうございます。
試したところ、できました。 Rewriteの勉強不足でした、、、、 本当にありがとうございます。 |
umebius |
投稿日時: 2019/4/23 9:46
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: redirectできない件 いえ、良かったです。
RewriteRuleとRewriteCondの文法はいまだに変だなと思うことがありますね。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |