我想把一些东西放在我的.htaccess文件中,这会隐藏.PHP文件的.PHP文件扩展名,所以去www.example.com/dir/somepage会显示它们www.example.com/dir/spagepage.PHP。
有没有任何工作解决scheme? 我的网站使用HTTPS,如果有关系的话。
这是我目前的.htaccess:
RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.example.com/$1 [R,L] ErrorDocument 404 /error/404.PHP RewriteCond %{REQUEST_FILENAME}.PHP -f RewriteCond %{REQUEST_URI} !/$ RewriteRule (.*) $1.PHP [L]
htaccess – redirect到子目录时的规范URL
非常基本的重写规则问题
摆脱CodeIgniterurl中的Index.PHP
mod_rewrite – 重写目录来查询string,除了#!/
强制非WWW,但强制所有的wordpress和整个域的HTTPS
Apache Rewrite:基于HTTP主机的映像目录
.htaccessredirecthttps到http不能正常工作
apache .htaccess到Nginx重写规则
将所有非wwwredirect到www。 为CakePHP网站
在根目录下安装CodeIgniter,在子目录下不工作
在DOCUMENT_ROOT下的.htaccess中使用下面的代码:
Options +FollowSymLinks -MultiViews # Turn mod_rewrite on RewriteEngine On RewriteBase / # To externally redirect /dir/foo.PHP to /dir/foo RewriteCond %{THE_REQUEST} ^[AZ]{3,}s([^.]+).PHP [NC] RewriteRule ^ %1 [R,L,NC] ## To internally redirect /dir/foo to /dir/foo.PHP RewriteCond %{REQUEST_FILENAME}.PHP -f [NC] RewriteRule ^ %{REQUEST_URI}.PHP [L]
您可以使用/.htaccess中的代码:
RewriteEngine on RewriteCond %{REQUEST_FILENAME}.PHP -f RewriteRule ^ %{REQUEST_FILENAME}.PHP [NC,L]
用上面的代码,你将能够以/ file的形式访问/file.PHP
删除html扩展名
RewriteEngine on RewriteCond %{REQUEST_FILENAME}.html -f RewriteRule ^ %{REQUEST_FILENAME}.html [NC,L]
注意:''RewriteEngine on'指令应该在每个htaccess的顶部使用一次,所以如果你想结合这两个规则,只需从第二条规则中删除该行。 您也可以删除您选择的任何其他扩展名,只需将代码中的.PHP替换为它们即可。
快乐htaccessing!
<Ifmodulee mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f # if the requested URL is not a file that exists RewriteCond %{REQUEST_FILENAME} !-d # and it isn't a directory that exists either RewriteCond %{REQUEST_FILENAME}.PHP -f # but when you put ".PHP" on the end it is a file that exists RewriteRule ^(.+)$ $1.PHP [QSA] # then serve that file (maintaining the query string) </Ifmodulee>
奇怪的是,这个代码在Windows中的XAMPP中尝试时给了我HTTP 500错误。 删除评论固定它。 所以移动的意见,所以他们是在自己的路线,而不是在指令相同的路线。
尝试这个:
# Unless directory,remove trailing slash RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]+)/$ http://example.com/folder/$1 [R=301,L] # Redirect external .PHP requests to extensionless url RewriteCond %{THE_REQUEST} ^(.+).PHP([#?][^ ]*)? HTTP/ RewriteRule ^(.+).PHP$ http://example.com/folder/$1 [R=301,L] # Resolve .PHP file for extensionless PHP urls RewriteRule ^([^/.]+)$ $1.PHP [L]Try:
参考:
如何在.htaccess中隐藏.PHP扩展名
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。