.htaccess 删除php文件扩展名

.htaccess 删除php文件扩展名,.htaccess,.htaccess,我正试图以这种方式实现url localhost/mysite/contact/而不使用php扩展,并在末尾添加一个尾随斜杠,但它不起作用 这是代码示例: RewriteRule ^([^/]+)/$ $1.php RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !

我正试图以这种方式实现url localhost/mysite/contact/而不使用php扩展,并在末尾添加一个尾随斜杠,但它不起作用

这是代码示例:

RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
如何实现以下功能: localhost/mysite/page/ 需要帮忙吗?
谢谢。

通过
httpd.conf
启用
mod_rewrite
.htaccess
,然后将此代码放入您的
文档根目录/.htaccess
文件:

RewriteEngine On
RewriteBase /mysite/

RewriteRule ^foo/?$ bar [L,NC,R]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/mysite/$1.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

确保已启用并加载mod rewrite

乙二醇 重新启动发动机

这将在没有文件系统检查开销的情况下工作


RewriteRule^([^.?]+)$%{REQUEST_URI}.php[L]

您的php是否作为
http://localhost/mysite/contact.php
?没错。当您输入:
http://localhost/mysite/contact
?你有404吗?这也是在
DOCUMENT\u ROOT/.htaccess
DOCUMENT\u ROOT/mysite/.htaccess
中找到的对象!在此服务器上找不到请求的URL。如果您手动输入URL,请检查拼写并重试。如果您认为这是服务器错误,请联系网站管理员。错误404 localhost Apache/2.4.3(Win32)OpenSSL/1.0.1c PHP/5.4.7
这是在DOCUMENT\u ROOT/.htaccess还是DOCUMENT\u ROOT/mysite/.htaccess
中?htaccess在/mysite/.htaccess文件夹中这是我做的。我知道使用.htaccess很难。完整代码:RewriteBase/mysite/RewriteRule^([^.?]+)$%{REQUEST_URI}.php[L]我遇到了同样的重定向问题!!