質問編集履歴

2

追記1を記載

2019/12/03 06:45

投稿

ringoman
ringoman

スコア17

test CHANGED
File without changes
test CHANGED
@@ -81,3 +81,33 @@
81
81
  一体なぜhtaccessを経由してアクセスすると正常に表示されないのでしょうか?
82
82
 
83
83
  どこを調べるべきでしょうか?
84
+
85
+
86
+
87
+ ### 追記1:
88
+
89
+ ```htaccess
90
+
91
+ RewriteRule ^(/?|index.html)$ https://test.site/sp/ [L]
92
+
93
+ ```
94
+
95
+ と、したところ、正常に遷移するようになったのですが、
96
+
97
+ 同一サイト内で絶対パス?を記載してリダイレクトすることに問題はないのでしょうか?
98
+
99
+ 同一サイト内のスマホ専用ページへのリダイレクトに絶対パスを使用することのメリットデメリットを教えてほしいです。
100
+
101
+ (もしくはそういった知見を得るための検索キーワードだけでも...)
102
+
103
+
104
+
105
+ これで問題なければこれでもいいかと思うのですが、
106
+
107
+ どんなサイトを見てもスマホページへのリダイレクトはRewriteRule ^(/?|index.html)$ /sp/ [L]とディレクトリのみの指定でしたし、
108
+
109
+ 当方が作成しているtest.siteにつきましてもリニューアル前(別のレンタルサーバに配置されていたとき)はRewriteRule ^(/?|index.html)$ /sp/ [L]で正常動作しておりました。
110
+
111
+
112
+
113
+ リニューアル前の当該サイト含め、通常ディレクトリのみの指定しかしないサイトが多いのには何か理由があるのか?と思うのですが、いかがでしょうか?

1

htaccessコード内容を編集、タイトルを編集

2019/12/03 06:45

投稿

ringoman
ringoman

スコア17

test CHANGED
@@ -1 +1 @@
1
- htaccess経由でアクセスした状態とURL直打ちでアクセスした状態が違う
1
+ スマホ専用ページへのリダイレクトhtaccess経由でアクセスする正常に表示されない(URL直打ちだと正常に表示される)
test CHANGED
@@ -12,13 +12,27 @@
12
12
 
13
13
  ```htaccess
14
14
 
15
- RewriteCond %{REQUEST_URI} !^/sp/.*$
15
+ RewriteCond %{REQUEST_URI} !^/(sp)/.*$
16
16
 
17
17
  RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|Android|Windows\ Phone|BlackBerry|Symbian) [NC]
18
18
 
19
19
  RewriteCond %{HTTP_COOKIE} !vm=pc [NC]
20
20
 
21
- RewriteRule ^(/?|index.html)$ sp/index.html [L]
21
+ ##RewriteRule ^(/?|index.html)$ sp/index.html [L] ##これだとCSSなど適用されていない不正な表示
22
+
23
+ ##RewriteRule ^(/?|index.html)$ /sp/ [L] ##これだとCSSなど適用されていない不正な表示
24
+
25
+ ##RewriteRule ^(.*)$ sp/$1 [L] ##これだと500エラーになる
26
+
27
+ ##RewriteRule ^(/?|index.html)$ sp/sitemap.html [L] ##これだとCSSなど適用されていない不正な表示
28
+
29
+ ##RewriteRule ^(/?|index.html)$ index.html [L] ##これだと正常表示(PCサイトのトップページ。CSS、画像あり)
30
+
31
+ ##RewriteRule ^(/?|index.html)$ html/p/c/c_2.html [L] ##これだと正常表示(PCサイトのページ。CSS、画像あり)
32
+
33
+ ##RewriteRule ^(/?|index.html)$ kensaku/ [L] ##これだと正常表示(PCサイトの検索ページ。CSS、画像あり)
34
+
35
+ RewriteRule ^(/?|index.html)$ sp/test.html [L] ##これだと正常表示(CSS、画像なし)
22
36
 
23
37
 
24
38
 
@@ -56,70 +70,14 @@
56
70
 
57
71
  URL「https://test.site/sp/」
58
72
 
73
+
74
+
59
- (なぜ読み込み時間がかかそこは別途調査が必要だと考えが、画像、cssも適用されていす)
75
+ かにも、htaccessコード中にコメントしてあように、sp/test.htmlや、PCサイトも試ししたが、spディレクトリ配下のCSSと画像があるときだけ正常に表示されません。
76
+
77
+
60
78
 
61
79
 
62
80
 
63
81
  一体なぜhtaccessを経由してアクセスすると正常に表示されないのでしょうか?
64
82
 
65
83
  どこを調べるべきでしょうか?
66
-
67
-
68
-
69
- ※補足
70
-
71
- ちなみに、htaccess、spディレクトリと同一階層にtestディレクトリを作成、直下にtest.htmlを配置、
72
-
73
- URL「https://test.site/」だと正常にアクセスできました。
74
-
75
-
76
-
77
- htaccessに記入した内容
78
-
79
- ```htsccess
80
-
81
- RewriteCond %{REQUEST_URI} !^/sp/.*$
82
-
83
- RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|Android|Windows\ Phone|BlackBerry|Symbian) [NC]
84
-
85
- RewriteCond %{HTTP_COOKIE} !vm=pc [NC]
86
-
87
- RewriteRule ^(/?|index.html)$ test/test.html [L]
88
-
89
- ```
90
-
91
-
92
-
93
- test.htmlに記載した内容
94
-
95
- ```html
96
-
97
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
98
-
99
- <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/temp.dwt" codeOutsideHTMLIsLocked="false" -->
100
-
101
- <head>
102
-
103
- <title>動作確認</title>
104
-
105
- </head>
106
-
107
-
108
-
109
- <body>
110
-
111
- <h1>テスト表示成功</h1>
112
-
113
- </body>
114
-
115
- <!-- InstanceEnd --></html>
116
-
117
- ```
118
-
119
-
120
-
121
- あと、test/test.htmlにしろsp/index.htmlにしろ、[R=302]を設定するとlocalhostにアクセスしてしまい、
122
-
123
- 想定通りリダイレクトできなかったのですが、これはサーバによるものでしょうか?
124
-
125
- (サーバはレンタルサーバを使用しています)