2


0

htaccess rewriteを使用して独自のtinyurlを作成する

これを変更できるhtaccessファイルにmodの書き換えを作成したいと思います。

mydomain.com/abCdE

これに:mydomain.com/controller/view/parameter/abCdE

前もって感謝します!

P.S. Zend Frameworkを使用しています

ステファノ

2 回答


3


私は過去にこの種のものを作成しました。 これはあなたが欲しいものです:

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule (.*) /parser.php?q=$1 [L,QSA]

そうすれば、ウェブサイト上の既存のファイルとディレクトリはすべて機能し、他のすべてのもの(*余分な_GETパラメーターを含む!)も渡されます。

これを.htaccessファイル内に配置する場合、RewriteRuleを

    RewriteRule (.*) parser.php?q=$1 [L,QSA]

これで質問に完全に答えるはずです。


2


`mod_rewrite`を使用して、すべての(またはほぼすべての)リクエストを1つのPHPファイルにリダイレクトし、ジョブを実行させることができます。

RewriteEngine on
RewriteRule (.*) /parser.php?q=$1

いくつかのページを残したい場合、条件を入れることができます:

RewriteEngine on

# Makes root of your site not to redirect to parser:
RewriteCond %{REQUEST_URI} !^/$

# Same for mypage.php
RewriteCond %{REQUEST_URI} !^/mypage.php$

# testdir and all files in it are not redirected to parser
RewriteCond %{REQUEST_URI} !^/testdir/

RewriteRule (.*) /controller/view/parameter$1