Eld*_*dar 13 php apache .htaccess
我有index.php,它按$_SERVER[‘REQUEST_URI’]变量读取完整路径.我的任务是当用户输入:www.domain/resource/777重定向到index.php路径/resource/777并解析$_SERVER[‘REQUEST_URI’]以做一些逻辑.但我也有真实的文件和文件夹,如:
当我尝试这个配置时:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php [L]
Run Code Online (Sandbox Code Playgroud)
客户端无法获取所有css和etc文件.如何在Apache中编写正确的规则来实现这个目标?
Sir*_*ius 14
如果您使用的是Apache 2.2.16或更高版本,则可以使用一个指令完全替换重写规则:
FallbackResource /index.php
Run Code Online (Sandbox Code Playgroud)
请参阅https://httpd.apache.org/docs/2.2/mod/mod_dir.html#fallbackresource
基本上,如果请求导致错误404,则回退资源uri将用于处理请求,正确填充$_SERVER[‘REQUEST_URI’]变量.
您可以在 htaccess 文件中设置错误文档,以便使用 index.php 然后请求不存在的文件:
ErrorDocument 404 /index.php
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5693 次 |
| 最近记录: |