【Apache】mod_rewriteについて語るスレ (686レス)
【Apache】mod_rewriteについて語るスレ http://medaka.5ch.net/test/read.cgi/php/1023791370/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
95: nobodyさん [] 05/02/06 15:47:21 ID:Vt8tOhSv http://www.example.com/hogehoge/hage=hage/fuga123fuga/ ↓ http://www.example.com/main.php?hogehoge/hage=hage/fuga123fuga/ とするにはどう書けばいいんでしょうか? http://medaka.5ch.net/test/read.cgi/php/1023791370/95
96: nobodyさん [sage] 05/02/06 15:54:47 ID:??? >>95 .htaccess質問コーナー Part3 http://pc5.2ch.net/test/read.cgi/hp/1105439192/ http://medaka.5ch.net/test/read.cgi/php/1023791370/96
97: 95 [] 05/02/19 16:09:31 ID:TAHykHoC >>96さま すいません。そっちできいてもレスがなかったです。 どなたか教えていただけないでしょうか? http://medaka.5ch.net/test/read.cgi/php/1023791370/97
98: nobodyさん [sage] 05/02/19 21:03:00 ID:??? >>97 そっちのテンプレのサイトを見ればわかるのに何もせずに聞くからスルーされる http://medaka.5ch.net/test/read.cgi/php/1023791370/98
99: nobodyさん [sage] 05/02/19 21:04:55 ID:??? 更に言うならわからんのならカッコつけることばかり考えずに そのままのURLで書け http://medaka.5ch.net/test/read.cgi/php/1023791370/99
100: nobodyさん [] 05/02/26 09:13:31 ID:LIYJX+3j #mod_rewrite RewriteEngine on RewriteRule ([^/]*)/?$ /index.php?cat=$1 RewriteCond %{REQUEST_URI} !/phpMyAdmin/(.*)$ RewriteCond %{REQUEST_URI} !/webmin/(.*)$ RewriteRule ([^/]*)/?$ /index.php?cat=$1 [L] としているのですが、URIに「.php」または「.inc」の文字が含まれている場合は、 上記のmod_rewriteを無視する、というのはどう書けばいいのでしょうか? よろしくお願いします。 http://medaka.5ch.net/test/read.cgi/php/1023791370/100
101: nobodyさん [sage] 05/02/26 11:47:37 ID:??? >100 正規表現のお勉強はどこまで進んだの? http://medaka.5ch.net/test/read.cgi/php/1023791370/101
102: 100 [] 05/02/26 14:55:39 ID:LIYJX+3j 正規表現がキモでしょうか? #mod_rewrite RewriteEngine on RewriteRule ([^/]*)/?$ /index.php?cat=$1 RewriteCond %{REQUEST_URI} !/phpMyAdmin/(.*)$ RewriteCond %{REQUEST_URI} !/webmin/(.*)$ RewriteCond %{REQUEST_URI} !/\.php/$ RewriteCond %{REQUEST_URI} !/\.inc/$ RewriteRule ([^/]*)/?$ /index.php?cat=$1 [L] とやってもうまくいかなかったもので、 (.phpで終わるURIにアクセスすると、 intermnal server error)になってしまうものでして http://medaka.5ch.net/test/read.cgi/php/1023791370/102
103: nobodyさん [sage] 05/02/26 16:56:14 ID:??? !/\.php/$ こういうのは !\.php とかに書き直せばいーじゃな〜い? http://medaka.5ch.net/test/read.cgi/php/1023791370/103
104: 100 [] 05/02/26 19:11:26 ID:LIYJX+3j >>103 下のようにやっても、http://example.com/phpinfo.php が表示できないです・・・・ #mod_rewrite RewriteEngine on RewriteRule ([^/]*)/?$ /index.php?cat=$1 RewriteCond %{REQUEST_URI} !/phpMyAdmin/(.*)$ RewriteCond %{REQUEST_URI} !/webmin/(.*)$ RewriteCond %{REQUEST_URI} !\.php RewriteCond %{REQUEST_URI} !\.inc RewriteRule ([^/]*)/?$ /index.php?cat=$1 [L] http://medaka.5ch.net/test/read.cgi/php/1023791370/104
105: 103 [sage] 05/02/26 19:25:22 ID:??? RewriteCond がOR条件なら、末尾に [OR] じゃな〜い? http://medaka.5ch.net/test/read.cgi/php/1023791370/105
106: 100 [] 05/02/27 03:30:20 ID:XqwD1Bfz いや、phpMyAdminでもwebminでもなく、拡張子がphpとかincとか入ってないものだけ、 RewriteRule ([^/]*)/?$ /index.php?cat=$1 [L] をやりたいので、AND条件だと思うのですが、、、勘違いしてます? http://medaka.5ch.net/test/read.cgi/php/1023791370/106
107: 103 [sage] 05/02/27 13:38:08 ID:??? 拡張子が .php で、且つ .inc という2つの拡張子を同時に持ち合わせている ものが存在すれば確かに AND条件じゃな〜い? http://medaka.5ch.net/test/read.cgi/php/1023791370/107
108: 100 [] 05/02/27 18:48:34 ID:XqwD1Bfz なんか、問題をわけようかと思って、↓にしたら、だめでした、、 #mod_rewrite RewriteEngine on RewriteRule ^example.com$ example.com/ [R] RewriteRule ^example.com/(.*)$ example.com/index.php/$1 とやると、 http://example.com/hoge が404 not foundになってしまいます。 自分の意図としては、 http://example.com/index.php/hoge と解釈され、 index.phpのなかで$_SERVER['PATH_INFO'](この例だと「/hoge」)を 操作したいのですが・・・ http://medaka.5ch.net/test/read.cgi/php/1023791370/108
109: nobodyさん [sage] 05/02/28 01:06:50 ID:??? AcceptPathInfo On http://medaka.5ch.net/test/read.cgi/php/1023791370/109
110: nobodyさん [] 05/03/04 03:42:48 ID:3xlEv0k9 #mod_rewrite RewriteEngine on RewriteCond $0 !^/index\.php RewriteRule ^.*$ /index.php$0 RewriteCond %{REQUEST_URI} !^/phpMyAdmin(.*)$ RewriteCond %{REQUEST_URI} !\.txt$ RewriteCond %{REQUEST_URI} !\.wml$ RewriteCond %{REQUEST_URI} !\.hdml$ RewriteCond %{REQUEST_URI} !\.html$ RewriteCond %{REQUEST_URI} !\.xhtml$ RewriteCond %{REQUEST_URI} !\.php$ RewriteCond %{REQUEST_URI} !\.inc$ RewriteCond %{REQUEST_URI} !\.html$ RewriteCond %{REQUEST_URI} !\.txt$ #RewriteCond %{REQUEST_URI} !\.gif$ #RewriteCond %{REQUEST_URI} !\.jpg$ #RewriteCond %{REQUEST_URI} !\.jepg$ #RewriteCond %{REQUEST_URI} !\.bmp$ #RewriteCond %{REQUEST_URI} !\.png$ RewriteRule ^example.com$ example.com/ [R] RewriteRule ^example.com/(.*)$ example.com/index.php/$1 ってやったら、/phpinfo.php(なかみはphpinfo関数のみ)が RewriteRule ^example.com/(.*)$ example.com/index.php/$1にひかかかってしまいます。 どこが問題なのでしょうか? あと、gifに対しては、上記の記述でただしいのでしょうか? http://medaka.5ch.net/test/read.cgi/php/1023791370/110
111: 110 [] 05/03/04 04:52:45 ID:3xlEv0k9 まちがえました。これです。で、ちと質問かえさせてください。 下記で、http://example.com/admin/にアクセスすると、 RewriteCond %{REQUEST_URI} "!/admin" にひっかかって、URL書き換えはおきないはずなのですが、 なぜか起きてしまってます。どなたか教えていただければ幸いです。 #mod_rewrite RewriteEngine on RewriteCond %{REQUEST_URI} "!/phpMyAdmin" RewriteCond %{REQUEST_URI} "!/webmin" RewriteCond %{REQUEST_URI} "!/admin" RewriteCond %{REQUEST_URI} "!/client" RewriteCond %{REQUEST_URI} !\.js$ RewriteCond %{REQUEST_URI} !\.css$ RewriteCond %{REQUEST_URI} !\.txt$ RewriteCond %{REQUEST_URI} !\.wml$ RewriteCond %{REQUEST_URI} !\.hdml$ RewriteCond %{REQUEST_URI} !\.html$ RewriteCond %{REQUEST_URI} !\.xhtml$ RewriteCond %{REQUEST_URI} !\.php$ RewriteCond %{REQUEST_URI} !\.inc$ RewriteCond %{REQUEST_URI} !\.html$ RewriteCond %{REQUEST_URI} !\.txt$ RewriteCond %{REQUEST_URI} !\.gif$ RewriteCond %{REQUEST_URI} !\.jpg$ RewriteCond %{REQUEST_URI} !\.jepg$ RewriteCond %{REQUEST_URI} !\.bmp$ RewriteCond %{REQUEST_URI} !\.png$ RewriteCond $0 !^/index\.php RewriteRule ^.*$ /index.php$0 RewriteRule ^example.com$ example.com/ [R] RewriteRule ^example.com/(.*)$ example.com/index.php/$1 http://medaka.5ch.net/test/read.cgi/php/1023791370/111
112: nobodyさん [sage] 05/03/11 14:08:18 ID:??? RewriteEngine On RewriteCond %{REMOTE_HOST} !\.jp$ [NC,OR] RewriteCond %{REMOTE_HOST} !\.bbtec\.net$ [NC,OR] RewriteCond DUMMY CONDITION RewriteRule index\.html$ - [F] こんなかんじでJPドメインとY!BB以外はindex.htmlにアクセスできないようにしているのだけど、 .comなどの禁止されているドメインでアクセスすると403のページには飛ぶけど、 ステータスは200なようなのです。 403を返したいのですが、どう書けばいいでしょうか? 14:01:24 nfo>Winsock 2.2 14:01:36 suc>sample.infoが見つかりました 14:01:36 suc>sample.info(255.255.255.0):80にconnect成功しました 14:01:36 rtn>サーバへリクエスト送信 14:01:36 cmd>GET /index.html HTTP/1.0 14:01:36 cmd>Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* 14:01:36 cmd>Accept-Charset: iso-8859-1,*,utf-8 14:01:36 cmd>Accept-Encoding: gzip 14:01:36 cmd>Accept-Language: en, ja 14:01:36 cmd>Connection: close 14:01:36 cmd>Host: sample.info 14:01:36 cmd>User-Agent: Mozilla/4.05 [en] (Win95; I) 14:01:36 rtn>サーバからのレスポンス 14:01:36 res>HTTP/1.1 200 OK 14:01:36 res>Date: Fri, 11 Mar 2005 05:01:40 GMT 14:01:36 res>Server: Apache/1.3.33 (Unix) 14:01:36 res>Content-Type: text/html;charset=Shift_JIS 14:01:36 res>Content-Length: 2260 14:01:36 res>Connection: close 14:01:36 nfo>sample.infoから切断します http://medaka.5ch.net/test/read.cgi/php/1023791370/112
113: nobodyさん [sage] 05/03/11 15:40:36 ID:??? RewriteRule ~([^/])+/([^/]) ?p=$1&q=$2 なら動くんですけど RewriteRule ~([^/])+/([^/])/([^/]) ?p=$1&q=$2&m=$3 となるとサーバーが見つかりませんになります。 試行錯誤した結果、$nのnが3以上のものでこうなることがわかったのですが、 このようになる制限はあるのですか?ローカルではエラーがでないのに XREAに置いたとたんエラーがでるようになりました。 http://medaka.5ch.net/test/read.cgi/php/1023791370/113
114: nobodyさん [] 05/03/12 17:48:37 ID:dOpkRpqt 独り言です。apache2.0でのことです。 apacheの./configureで--enable-module=allにしていてhttpd2.0にmod_rewriteをDSOで組み込みたい↓ httpd -lでmod_so.cが入ってることを確認。 mod_rewrite.cがあるディレクトリに移動 #/usr/local/apache2/bin/apxs -c mod_rewrite.c #/usr/local/apache2/bin/apxs -i -a -n rewrite mod_rewrite.la 2行目のコマンドで.soファイルがないと言われるので、同ディレクトリで #gcc -shared -o mod_rewrite.so mod_rewrite.o -Wc,-Wall -L/usr/local/lib -Llib で無理やり.soファイル作成。あとはできた.soファイルをapacheのmoduleにcpしてconfファイルに LoadModuleの行を追加。apache再起動→完璧 http://medaka.5ch.net/test/read.cgi/php/1023791370/114
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 572 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.007s