为啥我无法访问本地 XAMPP 上的某些页面或目录?
Posted
技术标签:
【中文标题】为啥我无法访问本地 XAMPP 上的某些页面或目录?【英文标题】:Why I can't access some pages or directories on my localhost XAMPP?为什么我无法访问本地 XAMPP 上的某些页面或目录? 【发布时间】:2021-08-18 09:39:26 【问题描述】:首先,我已经在网上挖了,但找不到解决办法。
以下是我对我的网站所做的操作以及我的分步问题:
-
我的 XAMPP 中有一个项目正在运行
(将本地主机编辑为 127.0.0.1:80)
(将 htdocs 编辑到我的工作区文件夹)
这里你可以看到它的内容:
RewriteEngine On
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteRule ^([^\.]+)$ $1.html [NC,L]
-
我还有 Visual Studio 的
Live Server
插件,它生成随机数量的 端口。 (可能会干扰?)
有时我可以访问index.php
,有时我没有。
我一直无法访问/icons/...
目录。
我真的需要一个认真的帮助,否则我可能会因为失去我的项目而发脾气:(
提前向求解器表示最衷心的感谢
【问题讨论】:
感谢分享您的代码,能否请您提及您要重定向/重写的从哪个网址到哪个网址?这将帮助我们帮助你,干杯。 @RavinderSingh13 感谢您的回复,但我解决了问题(请参阅我标记为答案的回复)。非常感谢 【参考方案1】:您发布的重写配置毫无意义。重写引擎应该如何决定使用哪个规则?你认为它会神奇地猜到吗?
看看这个,找出区别:
RewriteEngine On
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME.php -f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME.html -f
RewriteRule ^([^\.]+)$ $1.html [NC,L]
更好的变体是:
RewriteEngine On
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME.php -f
RewriteRule ^ %REQUEST_URI.php [END]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME.html -f
RewriteRule ^ %REQUEST_URI.html [END]
一般来说:你应该总是喜欢在实际的 http 服务器的主机配置中实现这样的规则。分布式配置文件(“.htaccess”)有许多缺点,只有在没有其他替代方案的情况下才应该使用它们(阅读:如果您使用廉价的托管服务提供商并且无法访问真实配置)。
【讨论】:
非常感谢。不幸的是,我从来没有机会或时间了解 http 服务器的主机配置。但显然这对我来说是一个损失,我要深入研究它。再次感谢。 不客气。但是我想指出,您很可能错过了我的最后陈述。这里使用的这种重写规则可以在不同的位置实现,在服务器的主机配置文件或分布式配置文件中。但它们是相同的规则(或多或少......)。以上是关于为啥我无法访问本地 XAMPP 上的某些页面或目录?的主要内容,如果未能解决你的问题,请参考以下文章