【发布时间】:2013-08-03 15:57:57
【问题描述】:
假设我正在使用 Apache,并且我有一个示例 Web 文件夹,例如:
在这个文件夹中,我有以下文件:
- index.html
- img.php
- 样本.jpg
- .htaccess
index.html 的代码如下:
<html>
<body>
<img src="sample.jpg" />
</body>
</html>
img.php 的代码如下:
<?php
if(!isset($_GET["path"])){
exit()
}
?>
<html>
<body>
<img src="<?php echo $_GET["path"] ?>" />
</body>
</html>
我喜欢http://myserver.com/test/sample.jpg 显示http://myserver.com/test/img.php?path=sample.jpg 内容 (网址不变)
经过网上大量搜索,我写了以下代码,但它不起作用:/
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(png|gif|jpe?g)$ [NC]
RewriteCond %{SCRIPT_FILENAME} \.(php|html)$ [NC]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.+)$ /test/img.php?path=$1 [L]
第三行可能有一个!,但我不知道具体在哪里
【问题讨论】:
-
您最终不会从 PHP 中得到与原始 HTML 相同的请求吗?
-
在这个例子中是的。但在我的项目中,PHP 和 HTML 最终不同。
-
我们在一个页面上谈论多少张图片?如果它不是太多,你总是可以让 php 读取图像数据并回显 base64 代码,不能完全链接到那个:)
-
大约 20 张照片。这可能是一个解决方案...
-
你会怎么做?
标签: image apache .htaccess redirect mod-rewrite