我有我的网站上,这是应该重定向到https以下htaccess的://和重写URL是这样的:.htaccess文件返回404子
http://company.com/product.php
变为这样:
https://company.com/product/
下面是当前的代码:
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
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]
RewriteRule ^updates/.*\.(zip)$ - [F,L,NC]
的问题是,当我试图访问一个子文件夹,例如:
https://company.com/subfolder/
它返回404,我猜是因为它正在寻找一个subfolder.php文件?
,当我进入像这样我可以打开子文件夹的index.php文件:
https://company.com/subfolder/index.php
我可以改变这个代码保存当前的功能,还允许访问子文件夹?
谢谢,成功了! –
没问题。乐意效劳! – colburton
它会对'/ invalid-file.php'做一个额外的无用重写,而不是直接渲染'/ 404.php'。 – anubhava