Php 如何允许通过.htaccess设置从上载文件夹访问所有文件
我有根目录和文件Php 如何允许通过.htaccess设置从上载文件夹访问所有文件,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我有根目录和文件 - api.php - .htaccess - uploads/ - uploads/abc.jpg - uploads/xyz.jpg 我正在为移动开发者编写RESTAPI,所以我已经成功地创建了下面列出的许多API api.php function register(){ //POST Method //I can access this API with URL http://example.com/register } function l
- api.php
- .htaccess
- uploads/
- uploads/abc.jpg
- uploads/xyz.jpg
我正在为移动开发者编写RESTAPI,所以我已经成功地创建了下面列出的许多API
api.php
function register(){
//POST Method
//I can access this API with URL http://example.com/register
}
function login(){
//POST Method
//I can access this API with URL http://example.com/login
}
function user(){
//GET Method
//I can access this API with URL http://example.com/user
}
现在的问题是,上传目录(ab.jpg,xyz.jpg)中存储了什么用户配置文件映像,我无法使用
我发现这是由于我将.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]
</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]
我不知道如何允许uploads文件夹使用.htaccess公开访问它。希望这能奏效。只需将这一行添加到每个重定向
RewriteCond%{REQUEST\u FILENAME}!\。(巴布亚新几内亚)$
重新启动发动机
重写条件%{REQUEST\u FILENAME}!\。(jpg | png)$
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-s
重写规则^(.*)$api.php?rquest=$1[QSA,NC,L]
重写条件%{REQUEST\u FILENAME}!\。(jpg | png)$
RewriteCond%{REQUEST_FILENAME}-d
重写规则^(.*)$api.php[QSA,NC,L]
重写条件%{REQUEST\u FILENAME}!\。(jpg | png)$
重写cond%{REQUEST_FILENAME}-s
重写规则^(.*)$api.php[QSA,NC,L]
这是因为您正在将现有的目录重写为/api.php。尝试删除您的#2重写条件和规则。然后替换-是的-f以避免重写现有文件。感谢@starkeen,它工作了这是我想要的现在不工作,当我用我的代码图像URL替换你的代码时,它工作了,但API URL不工作,当我放置两者时,它就不工作了thing@AmanMaurya更新了我的帖子,现在你可以再次查看,如果你有任何问题,一定要告诉我
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !\.(jpg|png)$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^(.*)$ api.php?rquest=$1 [QSA,NC,L]
RewriteCond %{REQUEST_FILENAME} !\.(jpg|png)$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ api.php [QSA,NC,L]
RewriteCond %{REQUEST_FILENAME} !\.(jpg|png)$
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^(.*)$ api.php [QSA,NC,L]
</IfModule>