繁体   English   中英

如何使用apache将任何URL重定向到我的index.html?

[英]How to redirect any URL to my index.html using apache?

无论URL是什么,我都希望我的网站指向index.html。
HTTP://本地主机/ WebsiteName /
HTTP://本地主机/ WebsiteName /什么
HTTP://本地主机/ WebsiteName /不管/不管-1 /不管-2 /不管-3 /等

通过在我的apache配置中使用以下重写代码:

RewriteEngine On  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteRule . index.html [L]  

当URL为以下任意一项时,我的URL可以正常工作:
HTTP://本地主机/ WebsiteName /
HTTP://本地主机/ WebsiteName /什么

但是这样或进一步扩展时会中断:
HTTP://本地主机/ WebsiteName /不管/
HTTP://本地主机/ WebsiteName /不管/不管-1 /不管-2 /不管-3 /等

每当我使用中断的URL之一时,就好像目录中存在另一个文件夹“ whatever”一样。

我不想更改URL,无论它是什么,我都希望它指向我的index.html。

根据那里的内容,所有这些url都应该转到您的index.html。 假定index.html位于DOCUMENT_ROOT。

我不确定您的问题是什么,但可能没有重写非文件的条件。 当它是文件时,请停止重写。 我注意到无论使用哪种配置,我网站上的任何更改都可以,但也许对您有用。

    RewriteEngine on
    ### If a uri leads to an actual file or directory (presumably with it's own index.html), then don't rewrite any further
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
    RewriteRule ^ - [L]

    ### everything else
    RewriteRule . /index.html [L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM