質問編集履歴
3
実行環境追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -9,6 +9,20 @@
|
|
9
9
|
これが難しければ、現在のルール + and条件としてURLの最後が/の場合は変換を行わないというものにしたいです。
|
10
10
|
どの様にすればいいか教えていただけると幸いです。
|
11
11
|
|
12
|
+
実行環境はwindows11、アクセスはlocalhostでのみテストしています。
|
13
|
+
```log
|
14
|
+
[Thu Jan 20 16:31:13.005260 2022] [authz_core:debug] [pid 22352:tid 1084] mod_authz_core.c(815): [client ::1:54067] AH01626: authorization result of Require all granted: granted, referer: http://localhost/
|
15
|
+
[Thu Jan 20 16:31:13.005260 2022] [authz_core:debug] [pid 22352:tid 1084] mod_authz_core.c(815): [client ::1:54067] AH01626: authorization result of <RequireAny>: granted, referer: http://localhost/
|
16
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace2] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] init rewrite engine with requested uri /file, referer: http://localhost/
|
17
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace3] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] applying pattern '^([^\\.]+)$' to uri '/file', referer: http://localhost/
|
18
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace4] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] RewriteCond: input='/file' pattern='!-f' => matched, referer: http://localhost/
|
19
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace4] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] RewriteCond: input='/file' pattern='!-d' => matched, referer: http://localhost/
|
20
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace2] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] rewrite '/file' -> '/file.py', referer: http://localhost/
|
21
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace2] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] local path result: /file.py, referer: http://localhost/
|
22
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace2] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] prefixed with document_root to C:/Apache24/htdocs/file.py, referer: http://localhost/
|
23
|
+
[Thu Jan 20 16:34:43.075744 2022] [rewrite:trace1] [pid 22352:tid 1076] mod_rewrite.c(480): [client ::1:53921] ::1 - - [localhost/sid#1d9f9d09c98][rid#1d9fb0cf1b0/initial] go-ahead with C:/Apache24/htdocs/file.py [OK], referer: http://localhost/
|
24
|
+
```
|
25
|
+
|
12
26
|
```httpd.conf
|
13
27
|
<IfModule mod_rewrite.c>
|
14
28
|
RewriteEngine On
|
2
誤字修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
例えば ./a/b/yyy のURLにをクリックすると ./a/b/yyy.py にアクセスしてほしいです。
|
4
4
|
|
5
5
|
色々調べて以下のようなルールにしたのですが、この場合だと ./aaa/bbb/ccc/ にアクセスした場合、本来なら ./aaa/bbb/ccc/index.html にアクセスしてほしいが./aaa/bbb/ccc/.pyになり、404が表示されてしまいます。
|
6
|
-
また、./aaa/file (存在するファイル) にアクセスしようとすると ./aaa/file.py になり、こちらも404
|
6
|
+
また、./aaa/file (存在するファイル) にアクセスしようとすると ./aaa/file.py になり、こちらも404になってしまいます。
|
7
7
|
|
8
8
|
実装したいルールとして、可能であれば .pyを付けた場合のファイルが見つかれば .pyにリネーム、存在しなければ通常通りの動作を行う、といったものにしたいです。
|
9
9
|
これが難しければ、現在のルール + and条件としてURLの最後が/の場合は変換を行わないというものにしたいです。
|
1
加筆修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
Apache24のmod_rewrite.cを用いてURLをリネームしたいのですが、なかなか想定したように動いてくれません。
|
2
2
|
**やりたいことは、CGIに対するアクセス(*.py)の拡張子を隠したいです。**
|
3
3
|
例えば ./a/b/yyy のURLにをクリックすると ./a/b/yyy.py にアクセスしてほしいです。
|
4
|
+
|
4
5
|
色々調べて以下のようなルールにしたのですが、この場合だと ./aaa/bbb/ccc/ にアクセスした場合、本来なら ./aaa/bbb/ccc/index.html にアクセスしてほしいが./aaa/bbb/ccc/.pyになり、404が表示されてしまいます。
|
6
|
+
また、./aaa/file (存在するファイル) にアクセスしようとすると ./aaa/file.py になり、こちらも404担ってしまいます。
|
7
|
+
|
5
8
|
実装したいルールとして、可能であれば .pyを付けた場合のファイルが見つかれば .pyにリネーム、存在しなければ通常通りの動作を行う、といったものにしたいです。
|
6
9
|
これが難しければ、現在のルール + and条件としてURLの最後が/の場合は変換を行わないというものにしたいです。
|
7
10
|
どの様にすればいいか教えていただけると幸いです。
|
8
11
|
|
9
|
-
```conf
|
12
|
+
```httpd.conf
|
10
13
|
<IfModule mod_rewrite.c>
|
11
14
|
RewriteEngine On
|
12
15
|
LogLevel debug rewrite:trace8
|