我的问题:我希望能够向我的客户发送类似的链接,mywebsite.com/products以便他们可以下载.xlsx文件并查看我在给atm播种的内容。有什么方法可以创建类似“ www.mywebsite.com/file”的链接,以便当用户访问该URL时,浏览器将打开提示下载.xlsx文件的提示?这是我的products.html档案:<!DOCTYPE html><html> <head> <meta http-equiv="Refresh" content="0; url=http://mywebsite.com/products.xlsx"/> </head></html>我已经将其上传products.xlsx到了我的服务器。我注意到,如果我使用扩展名访问该网站.html,则会提示用户下载文件。如果我访问时没有扩展名,则会导致404错误。也许是我的.htaccess配置引起了这个问题?也许Options +MultiViews是HTML RewriteCond..Options All -IndexesDirectoryIndex index.php index.htm index.htmlRewriteEngine onRewriteBase /# ---- Make pages render without their extension in the urlOptions +MultiViews# Force HTTPS on the subdomains/subdirectories login or admin#RewriteCond %{HTTPS} off#RewriteCond %{HTTP_HOST} ^(login|admin)\. [NC]#RewriteCond %{REQUEST_URI} ^(login|admin)\. [NC,OR]#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]# Force WWW if no subdomain is givenRewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$RewriteCond %{HTTP_HOST} !^$RewriteCond %{HTTPS}s ^on(s)|RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]# Remove phpRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^([^\.]+)$ $1.php [NC,L]# Remove htmlRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^([^\.]+)$ $1.html [NC,L]我怎样才能解决这个问题?
2 回答
largeQ
TA贡献2039条经验 获得超7个赞
如果要在加载网页时使用PHP来提供xlsx文件,请执行以下操作:
<?php
$fileName = 'Products.xlsx';
$filePath = "[PATH]/products.xlsx";
header('Content-disposition: attachment; filename=' . $fileName);
header('Content-type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Length: ' . filesize($filePath));
header('Content-Transfer-Encoding: binary');
header('Cache-Control: must-revalidate');
header('Pragma: public');
readfile($filePath);
将[PATH]替换为您的文件路径。
- 2 回答
- 0 关注
- 240 浏览
添加回答
举报
0/150
提交
取消