Php 由于htaccess,访问子目录文件时遇到困难
这是我的Php 由于htaccess,访问子目录文件时遇到困难,php,.htaccess,web,Php,.htaccess,Web,这是我的.htaccess代码 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-s RewriteRule ^(.*)$ api.php?rquest=$1 [QSA,NC,L] RewriteCond %{REQUEST_FILENAME} -d Rewri
.htaccess
代码
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^(.*)$ api.php?rquest=$1 [QSA,NC,L]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ api.php [QSA,NC,L]
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^(.*)$ api.php [QSA,NC,L]
RewriteCond %{REQUEST_URI} !^/images/
</IfModule>
重新启动发动机
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-s
重写规则^(.*)$api.php?rquest=$1[QSA,NC,L]
RewriteCond%{REQUEST_FILENAME}-d
重写规则^(.*)$api.php[QSA,NC,L]
重写cond%{REQUEST_FILENAME}-s
重写规则^(.*)$api.php[QSA,NC,L]
重写cond%{REQUEST_URI}^/图像/
我的目录结构:
我的问题是,我可以通过调用
/users
或/getData
等来访问我的api.php。但是如果我选择图像/someImage.jpg
,那么它就不允许了。试试这个简单的重写规则
RewriteBase /your web directory
重新启动引擎
RewriteRule^([a-zA-Z0-9_-]+)$api.php?rquest=$1
RewriteRule^([a-zA-Z0-9_-]+)/$api.php?rquest=$1
下面是代码的分解
RewriteBase/#在此处输入目录根
重新启动引擎
下面的重写规则将重定向到例如www.example.com/home到example.com/api.php?rquest=$1
RewriteRule^([a-zA-Z0-9_-]+)$api.php?rquest=$1
下面将重定向到例如www.example/home/到example.com/api.php?rquest=$1。请注意/after/home
RewriteRule ^([a-zA-Z0-9_-]+)/$ api.php?rquest=$1
以上代码行排除了将www.example.com/images/someimages.jpg重定向到www.example.com的规则/
因此,这将暂时起作用。RewriteRule^([a-zA-Z0-9_-]+)/$api.php?rquest=$1我也尝试过这一个,但它仍然不允许子目录文件。也许我一开始没有得到这个问题。你能解释更多吗,我可以帮助假设我点击的URl是www.mydomain.com/login,那么它将调用login方法api.php,如果www.mydomain.com/users,它将在api.php中调用users方法,因为我们“重写了rule^([a-zA-Z0-9_-]+)/$api.php?rquest=$1”,但不,因为这个规则,我不能访问www.mydomain.com/images/some.jpg