您好!我有一些关于我正在构建的网站的问题,该网站要求在引用我的SQL数据库后使用PHP将音频文件回显到我的HTML上。
首先,我的页面有一个音频控制标签,里面有一个php echo,如下所示:
<audio controls>
<source src="audio/<?php echo $file; ?>" type="audio/mp3">
</audio controls>
变量$ file等于用户在填写不同页面上的选择表单后想要播放的音频文件,该表格从我的数据库中提取:
INSERT INTO table
VALUES
(NULL, "track01.mp3");
(NULL, "track02.mp3");
(NULL, "track03.mp3");
(NULL, "track04.mp3");
因此,如果用户从选择表单中选择第一首曲目,则HTML如下所示:
<audio controls>
<source src="audio/track01.mp3" type="audio/mp3">
</audio controls>
一切正常至
我的音频加载完美,php / mysql代码运行良好;我遇到的问题是我的数据库中将有超过5千兆字节的音频,由于磁盘空间限制,我无法将其放到我的Web服务器上。所以我想,“我怎样才能让我的音频流到我的网站,所以我的网站上不需要5千兆字节?”
所以我开始研究利用Apache服务器(因为我已经使用WAMP测试我的网站了)并尝试将该服务器链接到我的网站。
我的第一个测试是将我的所有音乐放到我的本地主机上,然后我更改了我的实时网站上的代码来调用这样的文件:
<audio controls>
<source src="http://localhost/audio/<?php echo $file; ?>" type="audio/mp3">
</audio controls>
这也很好用,但显然这对其他人不起作用,因为他们无法在自己的计算机上访问我的本地主机。
所以我的重要问题是,我如何设置我的网站,以便我的php将回显来自家用计算机上localhost的文件,同时也允许任何查看我网站的人都能够看到没有错误的音频标签?我认为这与每个有权访问我的IP地址的人有关,但到目前为止我尝试的所有内容都失败了。我的问题有解决方案吗?我采取了错误的做法吗?有什么我应该指定的吗?
任何答案都将不胜感激。谢谢!
答案 0 :(得分:4)
首先,不建议从家用电脑托管文件
您不能将计算机保持在24/7
您的ISP的正常运行时间不能超过99%
您不会在家中获得100mbps或1gig / s端口,以便用户可以无缝收听音频
如果您仍想继续使用此功能,则需要静态IP或指向您PC的域,端口80(Apache)必须打开。
您在数据库中的文件将指向
http://(your-ip
/ domain-of-your-pc)/ filepath其中filepath是xampp / wamp中的文件夹。
静态IP:来自您的互联网提供商的WAN IP,每次重新连接都不会改变。
提示:
答案 1 :(得分:0)
这需要几个步骤和不错的上传带宽。
<source src="http://24.35.158.64/audio/track01.mp3" type="audio/mp3">
根据您的ISP,这将是可能的或不可能的。
答案 2 :(得分:0)
我希望云存储 - 有许多引擎可以提供非常好的价格/一些免费的。例如Amazon S3,Box,DropBox等。目前我有超过50Gb的免费存储空间,其中许多提供商提供对共享目录的http访问 - 只要您没有违反任何版权法等。