1

.php なしで、リンクを少し書きやすくしようとしています。

私の書き換えルールは次のとおりです。

RewriteEngine on
RewriteRule ([a-z]+)$ $1.php

これは私が自分で書いた最初の .htaccess ですが、うまくいかないようです。私は正規表現が得意です。そして、私はここで問題を見ていません。

助けてくれてありがとう。

4

3 に答える 3

1
RewriteEngine on
RewriteRule ^(.*)$ $1.php

ここから始めてください:http ://www.yourhtmlsource.com/sitemanagement/urlrewriting.html

于 2012-07-26T03:09:40.353 に答える
1

あなたのものはアルファベットのファイル名で動作しますが、これはファイルの名前/パスに関係なく、拡張子を省略するために私が使用したものです.php

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

ディレクトリを要求しようとしていないこと、および要求されたファイルがPHPファイルであることを確認します。

于 2012-07-26T03:10:25.500 に答える
1

mod_rewrite が apache config と AllowOverride All で有効になっていることを確認してください

LoadModule rewrite_module modules/mod_rewrite.so
<Directory "c:/wamp/www/">

    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from all

</Directory>

wamp で動作させるには systray の wamp アイコンをクリックします Apache に移動し、httpd.conf をクリックします

mod_rewrite.so のファイルを検索します。その行がコメント (#) になっている場合は、コメントを外します。次のように見えるはずです

LoadModule rewrite_module modules/mod_rewrite.so

次に、次のようなものを探します

<Directory "c:/wamp/www/">

あなたは あなたのワンプサーバーを再起動するAllowOverride noneためにそれを変更する必要がありますAllowOverride all

次に、.htaccess を nickb の提案に設定します

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

それでもうまくいかない場合は、httpd.conf で検索しAllowOverride noneてすべてを に変更しますAllowOverride all

于 2012-07-26T03:27:09.337 に答える