- ベストアンサー
RewriteRuleについて教えてください
RewriteEngine On RewriteBase / RewriteRule ^num([0-9]+)/$ number.html?inp=$1 [L] に設定したら、cssやイメージが適用されないです。 ご教授お願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- RewriteRuleについて教えてください
RewriteEngine On RewriteBase / RewriteRule ^num([0-9]+)/$ http://aaaa.jp/number.html?inp=$1 [L] 上記にように、.htaccessに設定しましたが、 ブラウザのアドレスバーに、http://aaaa.jp/number.html?inp=1のように、表示されますが、 アドレスバーにもhttp://aaaa.jp/num1のように表示したいですが、どうすれば良いですか?
- ベストアンサー
- HTML
- Apache2.0.54にてRewriteRule内に/が含まれるパスが認識されない
お世話になります。 TOCMAT5.0.3/Apache2.0.54 の環境にて 特定ページへのアクセスが来た際にsslにてアクセスを行いたく 以下のような設定を行いました。 .htaccessにて --------- RewriteEngine on RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^test/test.html$ https://%{SERVER_NAME}/secure.html [R,L] RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^test.html$ https://%{SERVER_NAME}/secure.html [R,L] --------- test.htmlでアクセスすると正常にリダイレクトが行われるのですが RewriteRule内に「/」が含まれているものはうまく動作しません。。 以下のようなパスに変更などして試しているのですがうまくいきません。 ^test\/test.html$ ^test//test.html$ ^test/*$ 他のサーバーにて、同様のRewriteRuleは正常に動作しますので、 mod_jk.conf httpd.conf の設定に不備があるように考えていますが検討が付きません。 ご教授よろしくお願い致します。
- 締切済み
- Linux系OS
- RewriteRule の使い方がわかりません(>_<)
~.com/abc/ の (1) RewriteEngine On RewriteRule ^(a).html?$ $1.cgi [L,T=application/x-httpd-cgi] としたところ /。。。/a.cgi (内部でのパス) ・Not Foundとか、 ・You don't have permission toだとか エラーがでるのですが (2) RewriteRule ^(b).html?$ /abc/a.cgi とかだと きちんと表示されます (1) をきちんと 設定したいのですが どうやって設定するのですか? もしかして 書き換えたアドレスは ドメインからの urlとして 記述しないといけないのですか?
- 締切済み
- BSD系OS
- プログラムのクエリーをRewriteRuleの正規表現で書き換え
ページを検索エンジンに登録させるために URLのクエリー以下(?からうしろ)を.htaccessのRewriteで書き換えて「/」区切りでアクセスさせようと思っています。 http://***.domain.com/program.html?a=1&b=2&c=3 ↓ http://***.domain.com/program/a/1/b/2/c/3.html 大抵このような場合 RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)\.html$ $1.html?$2=$3&$4=$5&$6=$7&$8=$9&$10=$11 [L] RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)\.html$ $1.html?$2=$3&$4=$5&$6=$7&$8=$9 [L] RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)\.html$ $1.html?$2=$3&$4=$5&$6=$7 [L] RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)\.html$ $1.html?$2=$3&$4=$5 [L] RewriteRule ^(.*)/(.*)/(.*)\.html$ $1.html?$2=$3 [L] のように追加していく書き方が簡単だと思うのですが、クエリーの数が多く正規表現の「()」で参照する変数が$10を超えてしまい上手く参照できません。 クエリーがいくら追加されても対応できる汎用性のある記述を作ろうと思っています。 何か良い方法があったら教えて下さい。
- 締切済み
- PHP
- RewriteCondとRewriteRuleについて
どのジャンルか迷いましたが、ここでお願いします。 ローカル環境で、トップにbbbディレクトリがあります。 bbbディレクトリの中は .htaccess index.html cccディレクトリ があり、 cccディレクトリの中は a.htmlがあります。 ¥┬index.html └bbb┬index.html .htaccess └ccc─a.html ここでhttp://localhost/bbb/a.htmlにアクセスすると cccディレクトリの中のa.htmlを参照するようにさせたいと思い、 .htaccessに RewriteEngine on RewriteCond $1 !^(b.html) RewriteRule ^(.*)$ ccc/$1 [L] や又は RewriteEngine on RewriteCond $1 ^(?!b.html)(.+) RewriteRule ^(.*)$ ccc/$1 [L] と書いたのですが Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. というエラーが出てしまいます・・・ RewriteEngine on RewriteCond $1 ^(a.html) RewriteRule ^(.*)$ ccc/$1 [L] と書けばちゃんと表示されるのですが、否定を用いた書き方(RewriteCond $1 !^(b.html)) だと、どこが間違っているのでしょうか?
- ベストアンサー
- Perl
- .htaccessでRewriteRule
.htaccessでパラメータ付のアドレスにRewriteRuleしたいのですが。 例えば test.phpにアクセスされた場合、test.php?id=5 としたいのですが。 現状、下記のように.htaccessに記述したのですがうまくいきません。 RewriteEngine On RewriteRule ^test.php$ /test.php?id=5 [R=301,L] また、test.phpにはパラメータ付(test.php?id=1)でアクセスされる場合もあります。 その場合には、test.php?id=1のままにしたいのですが。 どのように記述したらよろしいのでしょうか。
- 締切済み
- HTML
- Zend Frameworkの.htaccessが分からない
ので教えてください。 .htaccess: SetEnv APPLICATION_ENV development RewriteEngine On RewriteBase /zend23/kubo/public RewriteCond %{REQUEST_FILENAME} -s [OR] #(1) RewriteCond %{REQUEST_FILENAME} -l [OR] #(2) RewriteCond %{REQUEST_FILENAME} -d #(3) RewriteRule ^.*$ - [NC,L] #(4) RewriteRule ^.*$ index.php [NC,L] #(5) において (1),(2),(3)はどういう意味でしょうか? また (4),(5)においてRewriteRuleは(5)だけだとまずいのでしょうか? よろしくお願いします。
- ベストアンサー
- PHP
- .htaccessのRewriteRuleエラー
PHPのフレームワークを使って、サイトを作成しているのですが、 .htaccessの設定でつまずいております。 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php 上記のコードはフレームワークを使う時の お決まりのようなコードなのだと思うのですが、 これはコピペして問題無く動作しております。 ※このコードは下記ページのものをコピペしました。 http://www.yiiframework.com/doc/guide/1.1/ja/topics.url#sec-7 しかし、この既存の.htaccessファイルに下記の通り、 www無しのアクセスをwww有りのurlに転送させるための コードを追加すると、サイト内のリンクが切れてしまいます。 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{HTTP_HOST} ^mydomain.com //これを追加した RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L] //これを追加した RewriteRule . index.php 記述方法が誤っているのだと思うのですが、どのように記述すれば、 正常に動くのでしょうか?
- ベストアンサー
- PHP
- 301リダイレクトの例外処理
WEBサイト全体に 拡張子がhtmとhtmlが混在していて管理がわずらわしいので、 .htaccessで下記のような設定をしました。 ドメイン直下に.htaccessを置いているので、サイト全体でこの設定が有効に なっているのですが、あるフォルダだけこれが適用されないように 設定をしたいと思います。 いろいろやってみたのですが、今ひとつ正常に動いてくれません。 どのようにすればいいのでしょうか。 -------------------------------------------------------------- Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^XXX.jp RewriteRule ^(.*)$ http://www.XXX.jp/$1 [R=301,L] Options +FollowSymLinks RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ http://www.XXX.jp/$1 [R=301,L] Options +FollowSymLinks RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.htm RewriteRule ^(.*)index.htm$ http://www.XXX.jp/$1 [R=301,L] -------------------------------------------------------------- サーバーはApache/1.3.42 .htaccessファイルを置いているのは、ドメイン直下です。
- 締切済み
- その他([技術者向] コンピューター)
- htaccess の rewriterule でカタカナが入っているURLを使いたい
htaccess の rewriterule でカタカナが入っているURLを 使いたいのですが、htaccessファイルがUTF-8で保存できないため困っています。 wikiフォルダへのrewriteは動作しています。 redirect ではなく rewrite で行いたいです。 何かいい方法がありませんか? ※htaccessサンプル RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.aaa\.com) RewriteRule ^/?(.*) http://www.aaa.com/wiki/メインページ [R=301,L]
- ベストアンサー
- その他([技術者向] コンピューター)