10/10/2018, 00:04

Cho mình hỏi sao Smarty trên host không chạy ?

Mình làm trên localhost thì OK nhưng khi đưa lên host thì hiện blank page là sao vậy nhỉ?Có phải lỗi do smarty không compile được trên host không? Mình mới làm nên ai biết hoặc đã gặp phải trường hợp này chỉ giúp mình mới.
Hero_vanchien viết 02:13 ngày 10/10/2018
Host linux hả? thử kiêm tra lại chmod đi.
lovestormknx viết 02:17 ngày 10/10/2018
Nếu mình nhớ không lầm thì smarty có thư mục templates_c, bạn phải change mod cho nó là 777. Thử đi bạn!
Duong_Hien viết 02:18 ngày 10/10/2018
Thank.Mình đã check lại CHMOD nhưng vẫn bị như vậy.Sau đó mình set ini_set('display_errors',1); để hiển thị lỗi và nhận được thông báo :
Warning: require_once(/home/vol3/.../libs/smarty/smarty.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/vol3/.../include/setup_smarty.php on line 2

//setup_smarty.php

<?php
require_once SITE_ROOT.'/libs/smarty/smarty.class.php';
//define("SITE_ROOT",dirname(__FILE__)); trong file ../configs/config.inc.php
...
Help me please
mrmanh viết 02:16 ngày 10/10/2018
đúng đấy . Có lẽ là do lỗi ko ghi được file vào thư mục templates_c rồi.Bạn dùng FTP change CHMOD thành 7777 đi.
Hero_vanchien viết 02:19 ngày 10/10/2018
PHP Code:
Warning: require_once(/home/vol3/.../libs/smarty/smarty.class.php) ***91;function.require-once***93;: failed to open streamNo such file or directory in /home/vol3/.../include/setup_smarty.php on line 2 
Nó báo lỗi thế này và vẫn bảo là không ghi file được :P.
Sử dụng đường dẫn tương đối trong php không phải là một lựa chọn thông minh (Các hệ thống mạnh hiện nay đều vậy. symfony, joomla...). bạn có thể dụng các hàm của php để lấy đường đẫn tuyệt đối của site từ đó chèn sẽ chính xác hơn.
mrmanh viết 02:08 ngày 10/10/2018
Cái lỗi này:failed to open stream: No such file or directory in /home/vol3/.../include/setup_smarty.php on line 2
thường là do mất file hoặc do chữ hoa chữ thường (Host có phân biệt tên file chữ hoa chữ thường).Bạn thử check lại đường dẫn và tên file xem sao
dungbeo113 viết 02:10 ngày 10/10/2018
Pác MrManh nói đúng, đối với host linux thì cần phải chính xác từng kí tự, thêm nữa các pác ko thể thay CHMODE bằng FTP đối với Host Linux tại Việt Nam, nước ngoài thế nào thì chưa biết. Cũng không nhất thiết phải dùng đường dẫn tuyệt đối cho Smarty. Tớ cũng dùng Smarty và đã chạy trên host linux của VN và hoàn toàn bình thường khi viết đúng chữ hoa chữ thường trong các đường dẫn.
yeutoi viết 02:12 ngày 10/10/2018
//setup_smarty.php

<?php
require_once SITE_ROOT.'/libs/smarty/smarty.class.php';
//define("SITE_ROOT",dirname(__FILE__)); trong file ../configs/config.inc.php

Warning: require_once(/home/vol3/.../libs/smarty/smarty.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/vol3/.../include/setup_smarty.php on line 2

Mình nghĩ là đường dẫn require_once( SITE_ROOT.'/libs/smarty/smarty.class.php');

Bạn có chắc là SITE_ROOT=/home/vol3/...không?

thử debug bằng echo("".SITE_ROOT.""); xem coi SITE_ROOT là gi? có phải là /home/vol3/... và cái gì nằm ở dấu ... này?

Theo cái warning này thì không phải chmod. Nhiều người nói là chmod 777, cái này cũng tùy trường hợp thôi. Nếu mà PHP lúc compile chạy kiểu CGI thì chmod 777 sẽ cho ra lỗi Internal Server Errors. Khi đó phải dùng chmod 755 mới không bị lỗi Internal Server Errors.
shadowk viết 02:17 ngày 10/10/2018
Xin chào,
Nếu bạn bị lỗi
Warning: require_once(/home/vol3/.../libs/smarty/smarty.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/vol3/.../include/setup_smarty.php on line 2
thì đường dẫn tới smarty.class.php không đúng.

echo SITE_ROOT.'/libs/smarty/smarty.class.php' xem có đúng không.
Bài liên quan
0