• 締切済み

動的ページを静的ページの変換

動的ページを静的ページの変換で http://www.yyyyy.com/aaa/bbb/xxx.php?word=xxx&ger=1234&sort=xxxxhttp://www.yyyyy.com/aaa/bbb/xxx.php/xxx/1234/xxxx.html としたいのですが、、うまくいきません。 DirectoryIndex xxx.php RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z]+)/([0-9]+)/([0-9A-Za-z]+)\.html$ xxx.php?word=$1&ger=$2&sot=$3 [L] と RewriteEngine on RewriteRule ^([0-9A-Za-z]+)/([0-9]+)/([0-9A-Za-z]+)\.html$ xxx.php?word=$1&ger=$2&sot=$3 [L] で試しました。 サーバーはxreaです。 よろしくおねがいいたします。

  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

それってPHPをどこで活用する予定でしょうか?

関連するQ&A

  • mod_rewriteに適用したくないファイルがある場合は?

    RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z_)]+)\.htm$ http://www.****.com/$1.php [L] ↑のようにhtaccessでphpをhtmに見せているんですが、 1.フォルダ内のphpファイルでも一部にこれを適用したくない場合はどのように書けばいいのでしょうか? 2.この.htaccessファイルがある下層のフォルダにはmod_rewriteを適用したくない場合はどのように書けばいいのでしょうか? (.htaccessの効果って下層フォルダにも効いてしまいますよね?) どちらかだけでもいいので、分かる方いらっしゃれば手助けしていただければうれしいです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • htaccessが作動しません

    初心者です。よろしくお願いします。 さくらのレンタルサーバーを利用しているのですが.htaccessをアップロードしても反映してくれません。 今、http://oshiete1.sakura.ne.jp/aaa.php?usr_no=1&log_no=11 のように最後がphpなどで終わっているものを~htmlで終わらせるようにしたいのですが上手くいきません。 ちなみにどこかのサイトを参考にして、.htaccessファイル以下を記述しアップしてみました。 DirectoryIndex mod_rewrite.php RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z]+)/([0-9A-Za-z)]+)\.html$ mod_rewrite.php?var1=$1&var2=$2 [L] しかし何も起こりませんでした。 よろしくお願いします。

    • 締切済み
    • PHP
  • mod_rewrite 動的ページを静的ページへ

    SEO対策として、動的ページを静的ページへリダイレクトさせたいと考えています。 レンタルサーバーのため、.htaccessへ記入するしか方法はないと思っているのですが、 そもそも「静的化するってこと自体」がよく分かってないので、教えてください。 <現状> ▼URL /hoge/index.php?id=1 ▼.htaccess RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z]+)\.html$ details.php?id=$1 [L] <結果> 実行すると、/hoge/1.htmlとなり、望む結果を得られるのですが、 念のためディレクトリを指定しておきたいと思い、 RewriteRule ^/hoge/([0-9A-Za-z]+)\.html$ /hoge/details.php?id=$1 [L] としたところ、全く静的表示されなくなりました。 ■質問1 なぜ、ディレクトリを指定すると静的化できないのでしょうか? ■質問2 ネットでmod_rewriteの解説ページを検索してみると、静的化の例として、 「hoge/1.html へアクセスがあった際に、index.php?id=1の結果を返す」、 と記載されてます。 「index.php?id=1へアクセスした際に、hoge/1.html の結果を返す」 ようにした方がいいと思うのですが、 これって結果的には同じことをしている、と考えてよいのでしょうか? ■質問3 例えば、「/hoge/index.php?id=1」に対して、 「index.php?id=1へアクセスした際に、hoge/1.html の結果を返す」 ようにするには、どう書けばよいのでしょうか?

    • ベストアンサー
    • PHP
  • mod_rewriteの変換について

    こんにちは。 現在、業務でmod_rewriteの設定をしているのですが、こまっています。 やりたい事は http://localhost/hoge/aaa/bbb/ のアクセスがきた時に http://localhost/hoge/?action_aaa_bbb_index=true の内容を表示したいです。 但し、URLは http://localhost/hoge/aaa/bbb/ という感じです。 他のサイトで調べて、設定をしたのですがどうしても http://localhost/hoge/aaa/bbb/ アクセスすると http://localhost/hoge/以下のディレクトリィが表示されてしまいます。 また最後のオプションを[R]にすると表示はされますが http://localhost/hoge/?action_aaa_bbb_index=true にURLが書き換わってしまいます。 (これは当然なので、認識しています。) 以下、設定を記述します。 よろしくお願いします。 ■環境 windows XP apache2.2 ■記述箇所 httpd.conf --------設定内容--------- RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/hoge/([0-9A-Za-z]+)/([0-9A-Za-z]+)/?$ /hoge/?action_$1_$2_index=true [L] AllowEncodedSlashes On

  • 動的ページを静的URLにしたい

    静的URLにしたいと思い.htaccessを設定したのですが読み込めません。 DirectoryIndex yomi.cgi RewriteEngine on RewriteBase /○○ ←.htaccessを置いてます RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z]+).html$ yomi.cgi?mode=$1 [L] http://….net/○○/××.htmlとアクセスしても403エラーになってしまいます。 URLが間違っているのでしょうか? 通常http://….net/○○/yomi.cgiですが、yomi.cgi無しで通りDirectoryIndex yomi.cgiを削除すると403エラーになります。 色々と調べましたが解決出来ません。 すみませんが教えて下さい。 使用サーバー:さくらサーバー Apache1.3.39

  • RewriteRule有効について(Apache設定)

    Apache2をWindows2kにインストールし運用しています。 RewriteRuleを行うが有効になりません。 httpd.confと.htaccessは、以下のように記述しています。 .htaccessは、レンタルサーバーに転送しテストすると正常に動作します。 と言うことは、ローカルサーバーの環境設定がまずいと言うことになるかと思うのですがどうしても分かりません。 ご教授の程、宜しくお願いします。 -----(httpd.conf)----- Options All AllowOverride All LoadModule rewrite_module modules/mod_rewrite.so -----(httpd.conf)----- -----(.htaccess)----- RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^info.html+ info.php RewriteRule ^k/index.html$ k/index.php RewriteRule ^k/([0-9A-Za-z]+)/$ k/index.php?id=$1 -----(.htaccess)-----

  • httpd.confのmod_rewite設定

    下記のようにMAMPのhttpd.confの一番下にmod_rewite設定のため行を追加したのですが 動作しません。 ※ちなみにURLをmod_rewite設定で http://localhost/○○○/index.php?category=△△△△△ を http://localhost/○○○/△△△△△ にする予定です。 よろしくお願いいたします。 RewriteEngine On RewriteCond %{REQUEST_URI} ^/○○○○/?(.*)$ RewriteCond %{QUERY_STRING} (^|&)category=([^&]+)($|&) RewriteRule ^([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)$ index.php?category=$1 [QSA,PT] RewriteLog tmp/rewrite.log RewriteLogLevel 3

    • 締切済み
    • PHP
  • mod_rewriteで静的化(PHP)

    ご質問です。 例えば以下のような静的なページをmod_rewriteを使って.htaccessで作成しようとしています。 RewriteRuleの記述内容がよくわからず困っています。 また、.htaccessは、どのディレクトリに配置すればよいでしょうか。 どなたかご存知でしたら教えて下さい。 http://localhost/free/index.php?action=member →http://localhost/free/member http://localhost/free/index.php?action=bbs →http://localhost/free/bbs http://localhost/free/index.php?action=usr →http://localhost/free/usr このような記述をしていますが、ご指摘お願いします。 ---------------------- DirectoryIndex index.php RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z)]+)$ index.php?action=$1 [L] ---------------------- 宜しくお願いします。

    • 締切済み
    • PHP
  • WordPressの.htaccessについて

    こんにちは。 wordpressでマルチサイトの環境を設定しようとしています。 ネットワークの設置より、次のような.htaccessを/wordpress/ディレクトリに配置しました。 --- RewriteEngine On RewriteBase /wordpress/ RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] --- このファイルを配置しなくても、 http://domain.jp/wordpress/wp-admin/network/setup.php や http://domain.jp/wordpress/wp-admin/network/users.php は表示されますし、 http://domain.jp/wordpress/ にアクセスすると1つ目のブログが表示されます。 しかしこのファイルを配置しない場合、新たに作成した2つ目のブログである http://domain.jp/wordpress/test01/ は表示されません。ファイルを配置した場合は表示されます。 しかし、ディレクトリを見ても/wordpress/にはtest01ディレクトリは存在しません。おそらくは何らかの転送を行っているのだと思いますが、上記の.htaccessファイルを配置した場合、 http://domain.jp/wordpress/test01/ はどういう法則で、どこに転送されるのでしょうか。 どなたか教えてください。よろしくお願いいたします。

    • 締切済み
    • PHP
  • 動的urlに最後にスラッシュを付ける方法

    動的urlの最後に無理矢理スラッシュを付けて静的にする方法を教えてください。 例 xxx/index.php?section=1 → xxx/index.php?section=1/ .htaccessに RewriteEngine On AllowEncodedSlashes On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^index.php?section=(.*)/$ index.php?section=$1 とやってもだめです。 教えてください。

    • 締切済み
    • PHP

専門家に質問してみよう