ubuntu 部署 thinkphp 项目问题

2015-10-29 14:10:49 +08:00
 chigco
在 windows 服务器中程序都没问题。完整迁移到 linux 的时候点击其他链接木有问题,但是点击
http://linux/Uploads/144258093253700.jpg (在 windows 中点击类似链接是没问题的)
报错:
无法加载模块:Uploads
错误位置
FILE: /.../.../ThinkPHP/Library/Think/Dispatcher.class.php   LINE: 176

有熟悉的同学吗?本人非 PHP 也不懂 Thinkphp
3169 次点击
所在节点    问与答
6 条回复
kungfuchicken
2015-10-29 14:26:59 +08:00
目测是 Linux 目录大小写敏感的问题,你在服务器上看看 uploads 目录的大小写情况?如果目录是全小写,把路径里面的 Uploads 改为全小写是否能够访问?
ericls
2015-10-29 14:29:46 +08:00
Nginx 里面 设置

location /Uploads {
root /parent/path/of/Uploads/; # 注意是 parent 目录.
}
chigco
2015-10-29 15:25:00 +08:00
@ericls apache
@kungfuchicken 我也感觉是大小写敏感。服务器上是 Uploads
y10n
2015-10-29 18:49:56 +08:00
文件不存在才会走 php 的重写规则进行路由
ericls
2015-10-30 06:30:19 +08:00
@chigco 一样的设置思路 静态文件不走 php 路由
colinlet
2015-10-30 10:54:24 +08:00
你链接有问题吧,不管你服务器是系统的。图片访问路径都是相对网站域名的,如果你域名是 http://a.com ,然后图片是放在项目 Public/images/img.jpg ,那图片访问地址就是 http://a.com/Public/images/img.jpg

nginx 配置(Apache 也类似)
server {
listen 80;
root /home/colin/test_app/;
index index.php index.html index.htm;
server_name test.com;

location ~\.php {
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
access_log /home/logs/nginx/access.log;
error_log /home/logs/nginx/error.log;
}

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/231992

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX