1

作为标题,我想将我所有的php页面重写为'htm',并禁止所有.php请求,人们只能通过' .htm?querystring'之类的url访问页面,但不能通过' .php'获得结果,应该怎么做我愿意吗?我写了下面的规则,但它不起作用(所有页面都是 404)

RewriteRule ^(.*)\.htm$ $1\.php [QSA,PT,L]
RewriteRule ^(.*)\.php$ 404 [QSA,PT,L]
4

1 回答 1

1

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On

# block .php extension
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php[\?\s] [NC]
RewriteRule ^ - [F]

# convert .htm/.html to .php
RewriteRule ^(.+?)\.html?$ $1.php [L,NC]
于 2013-07-30T06:45:08.147 回答