Php 没有文件名的HTACCESS请求\u URI
有没有办法不必引用Php 没有文件名的HTACCESS请求\u URI,php,.htaccess,url-rewriting,Php,.htaccess,Url Rewriting,有没有办法不必引用~abc123/uploader,而是修改我的正则表达式,以便动态传递不带文件名的请求uri 我尝试过从请求uri中删除文件名,并更改正则表达式,但都没有效果 我要做的是确保某些文件类型是由PHP脚本处理的,不能直接访问。这里有两条线索可以帮助您: 首先,您可以在正则表达式中使用这些关键字(我让您搜索更多信息):%{SCRIPT\u FILENAME}和%{REQUEST\u URI} 其次,下面是一个如何使用它的示例: RewriteEngine On RewriteCond
~abc123/uploader
,而是修改我的正则表达式,以便动态传递不带文件名的请求uri
我尝试过从请求uri中删除文件名,并更改正则表达式,但都没有效果
我要做的是确保某些文件类型是由PHP脚本处理的,不能直接访问。这里有两条线索可以帮助您: 首先,您可以在正则表达式中使用这些关键字(我让您搜索更多信息):
%{SCRIPT\u FILENAME}
和%{REQUEST\u URI}
其次,下面是一个如何使用它的示例:
RewriteEngine On
RewriteCond %{REQUEST_URI} !(images)
RewriteRule ^(.*)\.(txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ http://%{SERVER_NAME}/~abc123/uploader/process.php [nc]
还有一些人知道,您甚至可以通过这种方式更改整个目标文件名(注意:STATIC
和PATH\u LOCAL
变量是一个环境变量,我之前已经计算了几个步骤):
以下两条线索可能对您有所帮助: 首先,您可以在正则表达式中使用这些关键字(我让您搜索更多信息):
%{SCRIPT\u FILENAME}
和%{REQUEST\u URI}
其次,下面是一个如何使用它的示例:
RewriteEngine On
RewriteCond %{REQUEST_URI} !(images)
RewriteRule ^(.*)\.(txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ http://%{SERVER_NAME}/~abc123/uploader/process.php [nc]
还有一些人知道,您甚至可以通过这种方式更改整个目标文件名(注意:STATIC
和PATH\u LOCAL
变量是一个环境变量,我之前已经计算了几个步骤):
我会照你说的做。(?!…)是一个负前瞻,即不包括图像。[-\w.]*$位将与普通文件名匹配。我不明白的是,没有[R]的http://%{SERVER\u NAME}/..
重定向只是一个正常的内部重写,为什么不这样做呢
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^(?!images)(.*)/[-\w\.]*$
RewriteRule ^(.*)\.(txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ http://%{SERVER_NAME}/%1/process.php [NC,L]
没有任何条件或
RewriteRule ^(?!images)(.*)/[-\w]*\.(?:txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ $1/process.php [NC,L]
如果你想让它更容易理解
我会照你说的做。(?!…)是一个负前瞻,即不包括图像。[-\w.]*$位将与普通文件名匹配。我不明白的是,没有[R]的http://%{SERVER\u NAME}/..
重定向只是一个正常的内部重写,为什么不这样做呢
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^(?!images)(.*)/[-\w\.]*$
RewriteRule ^(.*)\.(txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ http://%{SERVER_NAME}/%1/process.php [NC,L]
没有任何条件或
RewriteRule ^(?!images)(.*)/[-\w]*\.(?:txt|rtf|docx?|odt|pdf|bmp|gif|jpe?g|png|tiff?)$ $1/process.php [NC,L]
如果你想让它更容易理解的话。谢谢你的提示,但我还是不知所措。我不想在模板示例中引用和替换字符串,在您的规则中,您引用字符串“templates”。我只想去掉请求文件名,并将其附加到“process.php”中,作为我规则的最后一部分。谢谢你提供的线索,但我仍然不知所措。我不想在模板示例中引用和替换字符串,在您的规则中,您引用字符串“templates”。我只想去掉request_文件名,并将其附加到“process.php”中,作为我规则的最后一部分。