我的localhost网站存在问题。
所以我在这里解释一下我的问题,我在localhost / sg /中有一个文件夹,包含所有php文件。如果我想要显示图片,我应该使用/sg/upload/myfile.jpg。
但是如果我在我的服务器上传我的php文件无效,因为我的www文件夹中没有/ sg /文件夹。
所以我的问题是,有可能有一个脚本可以离线和在线管理吗?
如果您有疑问,请不要犹豫。
谢谢。
答案 0 :(得分:2)
您可以使用配置文件来动态设置图像和其他文件的路径,具体取决于网站是本地还是生产。
答案 1 :(得分:2)
设置相对于您的网站路径的上传路径 例如,定义一个常量:
脱机:
<?php
define ("SITEPATH","http://localhost/sg/upload/");
<?
在线:
<?php
define ("SITEPATH","http://www.yoursite.com/upload/");
<?
然后使用此常量(SITEPATH)来定位文件上载目标
<?php
$destination = SITEPATH.$filename;
?>
答案 2 :(得分:0)
我认为你的问题与你的网络服务器(Apache?)有关,而不是PHP。
我想问题的答案是你的(Apache?)文件中的正确配置,更具体地说是生产和开发服务器中的DocumentRoot指令
答案 3 :(得分:0)
您还可以将图像文件夹/sg/upload/
上传到生产服务器吗?发布程序时,还需要发布依赖项。在您的情况下,该文件夹是您项目的依赖项。您需要使用配置文件,例如John建议为生产环境指定不同的上传文件夹,或者您只需上传该文件夹。
答案 4 :(得分:0)
通常只有basedir不同,但不是站点结构:
development: http://localhost/project-blue/
production: http://project-blue.example.com/
在该目录中放置一个PHP文件,假设为index.php
:
http://localhost/project-blue/index.php
如果它应显示上传图片upload/picture.jpg
的网址,您只需要正确链接:
<img src="upload/picture.jpg">
然后,浏览器将获取此URL:
http://localhost/project-blue/upload/picture.jpg
这将适用于开发和生产:
http://project-blue.example.com/upload/picture.jpg
所以实际上你在这里并不需要太多关心。