it-swarm-vi.com

Lỗi: 404 Danh mục không tìm thấy lỗi với tùy chỉnh PHP script

Hiện tại tôi đã làm việc với Joomla và bây giờ tôi đang làm việc với phiên bản 3.1.5. Tôi thường tự tạo PHP script để sử dụng cho AJAX cuộc gọi lại và những thứ khác. Tôi đặt chúng vào một thư mục có tên scripts whichn ' t một phần của cài đặt Joomla bình thường.

Do đó, tôi phải sử dụng một số mã cấu hình để các tập lệnh hoạt động tốt khi truy cập chúng từ Joomla. Tôi sử dụng mã này:

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(dirname(__FILE__)));
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

/* Create the Application */
$mainframe = JFactory::getApplication('site');

Gần đây tôi đang cố gắng gọi tập lệnh này cho AJAX và tôi gặp lỗi sau:

404 (Không tìm thấy danh mục)

Lý do duy nhất tôi có thể nghĩ đến cho điều này là những thứ Joomla mà người dùng không có đặc quyền để đọc tập lệnh vì lý do nào đó để làm với một danh mục? Tôi không chắc chắn, và tôi đang tìm kiếm sự giúp đỡ. Tôi đã tạo bất kỳ danh mục nào cho cài đặt Joomla này và tôi không sử dụng chúng.

3
jeffery_the_wind

Khi bạn gọi độc lập PHP scripts for AJAX cuộc gọi lại, bạn phải kiểm tra xem chúng sống như thế nào trên trang web Joomla thông thường.

Trong một thiết lập Apache-Joomla thông thường, đầu tiên .htaccess áp dụng một số quy tắc để xác định các hạn chế bảo mật, xử lý SEF, v.v. Sau đó, index.php kiểm soát, khởi tạo CMS, định tuyến cuộc gọi đến thành phần bên phải và cuối cùng tạo đầu ra .

Trong trường hợp của bạn, có vẻ như Apache đang ủy quyền cuộc gọi cho thành phần com_content, thay vì gọi tập lệnh của bạn .

2
Anibal

Các bạn. Trong trường hợp của tôi, tôi đã gặp phải điều này vì 'nhiệm vụ' không được chuyển đến trang. Tôi đã có một trường mẫu ẩn có

<input type="hidden" name="jform[task]" value="myCustomTask">

thay vì

<input type="hidden" name="task" value="myCustomTask">

Điều đó chủ yếu là do tôi có nhiệm vụ trong tệp XML của biểu mẫu.

0
asiby