以下nginx配置似乎无法正常工作,并404在访问时返回错误http://example.com/xml_apps/- 但是joomla网站可以从根网址正常工作http://example.com
更新 看起来请求现在发送到codeigniter应用程序,因为404错误来自CI应用程序.
http://example.com/xml_apps/index.php/xmlengine/jmprovince?category=1&count=10
Run Code Online (Sandbox Code Playgroud)
我们是否需要某种配置来添加codeigniter级别?让控制器/动作工作.
server {
listen 80;
root /home/ubuntu/websites/example.com/public_html;
index index.html index.htm index.php;
server_name example.com;
location / {
try_files $uri $uri/ /index.php;
}
location /xml_apps/ {
if ($request_uri ~ "^system.*"){
rewrite ^/xml_apps/(.*)$ /xml_apps/index.php?/$1 last;
}
if (!-e $request_filename){
rewrite ^/xml_apps/(.*)$ /xml_apps/index.php?/$1 last;
}
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_hide_header X-Powered-By;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Mandrill和CodeIgniter发送电子邮件.我可以按照文档中的描述使用Mandrill API:
require_once(mandrill/Mandrill.php);
$Mandrill = new Mandrill($apikey);
$params = array(
"html" => "<p>\r\n\tHi Adam,</p>\r\n<p>\r\n\tThanks for <a href=\"http://mandrill.com\">registering</a>.</p>\r\n<p>etc etc</p>",
"text" => null,
"from_email" => "xxx@xxx.example.com",
"from_name" => "chris french",
"subject" => "Your recent registration",
"to" => array(array("email" => xxx@yyy.example.com")),
"track_opens" => true,
"track_clicks" => true,
"auto_text" => true
);
$Mandrill->messages->send($params, true));
Run Code Online (Sandbox Code Playgroud)
这很简单,但当我尝试通过CodeIgniter发送Mandrill邮件时,我得到错误结果; 这是我的代码:
$this->load->library('mandrill/Mandrill');
$this->Mandrill->apikey($apikey);
//...
//All other options
$this->Mandrill->messages->send($params, true));
Run Code Online (Sandbox Code Playgroud)
库正在加载成功,发送电子邮件是我收到错误的地方.
抛出错误:
Fatal error: Call to a member function send() on null
Run Code Online (Sandbox Code Playgroud) 我当前的CI项目现在处理文件.我想上传一个xls | xlsx文件到服务器,然后将excel文件数据导入Database表.
作为第一部分,上传的文件成功,我将文件上传到相同级别的应用程序,系统,资产中的uploads文件夹.现在我想加载这个文件并将这些内容导入到DB.我正在使用PHPExcel来执行此操作
这是我的控制器
$this->load->library('phpexcel');
$this->load->library('PHPExcel/iofactory');
$objPHPExcel = new PHPExcel();
$objReader= IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel=$objReader->load(BASE_URL().'uploads/Data_Report.xls');
$objWorksheet=$objPHPExcel->setActiveSheetIndex(0);
$this->load->model('datas_model');
for($i=2;$i<=77;$i++) {
$client_name= $objWorksheet->getCellByColumnAndRow(0,$i)->getValue();
$client_address= $objWorksheet->getCellByColumnAndRow(1,$i)->getValue();
$data_inp=array('name'=>$client_name, 'address'=>$client_address);
$this->datas_model->add_data($data_inp);
}
Run Code Online (Sandbox Code Playgroud)
这是我的观点
<?php echo form_open_multipart('../settings_controller/upload_data/do_upload');?>
<div class="custom-file-upload">
<input type="file" id="file" name="userfile" multiple/>
</div>
<div class="button-container-2">
<button class="btn btn-primary" id="updown-btn" type="submit" style="height:45px;">Upload </button>
</div>
<?php echo "</form>"?>
Run Code Online (Sandbox Code Playgroud)
当我跑步时,它显示我的错误 Uncaught exception 'PHPExcel_Reader_Exception' with message 'Could not open http://localhost/myproject/uploads/Data_Report.xls for reading! File does not exist.'
当我把那个Data_Report.xls文件放在htdocs中时,它可以成功运行.
问题是当我使用BASE_URL().'uploads/Data_Report.xls'时.但该文件在实际存在,我通过粘贴url上的localhost/myproject/uploads/Data_Report.xls进行验证,并成功下载. …
我正在运行在服务器上的codeigniter中运行一个Web应用程序.这里我有一个用户注册表单,在localhost中工作正常.但是当涉及到服务器时,当我尝试注册用户时,我的页面显示错误:
mysql_escape_string() function is deprecated use mysql_real_escape_string() in mysql/mysql_driver
我尝试更改我的mysql_driver页面,但更改后的所有内容都变为空白.谁能帮我解决这个错误?
我正在尝试从我的localhost发送带有我的codeigniter项目的电子邮件,但它始终显示如下错误:
220 mx.google.com ESMTP pp9sm11498734pbb.65 - gsmtp
hello: 250-mx.google.com at your service, [202.43.95.33]
250-SIZE 35882577
250-8BITMIME
250-AUTH LOGIN PLAIN XOAUTH XOAUTH2 PLAIN-CLIENTTOKEN
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
Failed to authenticate password. Error: 535-5.7.8 Username and Password not accepted. Learn more at 535 5.7.8 http://support.google.com/mail/bin/answer.py?answer=14257 pp9sm11498734pbb.65 - gsmtp
from: 530-5.5.1 Authentication Required. Learn more at
530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 pp9sm11498734pbb.65 - gsmtp
The following SMTP error was encountered: 530-5.5.1 Authentication Required. Learn more at 530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 pp9sm11498734pbb.65 - gsmtp
to: 530-5.5.1 …Run Code Online (Sandbox Code Playgroud) 我是CI的新手,现在我正在尝试使用CodeIgniter 3来开发我的网站.我只是解压缩框架并在config/autoload.php文件中只改变一个想法:
$autoload['libraries'] = array('database','input');
Run Code Online (Sandbox Code Playgroud)
当我运行该网站时,出现错误:
Unable to load the requested class: Input
Run Code Online (Sandbox Code Playgroud)
当我尝试使用CI版本2.2.0稳定时,每件事情都可以,没有错误可以解释一下为什么并帮助我解决它?
在CodeIgniter中我的安装应用程序routes.php我想检查是否存在两个文件并根据它们进行设置.
其中,如果文件存在则会升级,否则转到第一步.
有更好,更安全的方式吗?
$admin = dirname(FCPATH) . '/admin/config/database.php';
$catalog = dirname(FCPATH) . '/catalog/config/database.php';
if (file_exists($admin, $catalog)) {
$route['default_controller'] = "upgrade/index";
$route['404_override'] = '';
} else {
$route['default_controller'] = "step_1/index";
$route['404_override'] = '';
}
Run Code Online (Sandbox Code Playgroud) 我通过点击该链接向我的用户的电子邮件发送链接以激活他的帐户.示例链接:http: //test.com/welcome/make_active_user/($ user_id)
然后我$user_id在我的控制器中编码,之后我的链接看起来像下面的那个
一切都很好.现在我想解码$user_id,但" /"符号创建问题.codeigniter只在" /"符号之前使用了那些字符.如何在没有" /"的情况下获得编码的user_id的输出
我$this->encrypt->encode($user_id,$key);在我的控制器中使用" "
请帮忙
升级后Codeigniter 2到3版本,我收到此错误..为什么会这样?
遇到了未被捕获的异常
类型:例外
消息:已配置的数据库连接是持久的.中止.
文件名:/var/www/vhosts/xxx.com/app/system/libraries/Session/drivers/Session_database_driver.php
行号:94
回溯:
文件:/var/www/vhosts/xxx.com/app/application/core/MY_Controller.php行:11功能:__ construct
文件:/var/www/vhosts/xxx.com/app/application/core/MY_Controller.php行:52功能:__ construct
文件:/var/www/vhosts/xxx.com/app/application/controllers/Dashboard.php行:7功能:__ construct
文件:/var/www/vhosts/xxx.com/application/index.php行:293功能:require_once
我阅读了CodeIgniter关于迁移类的文档.我能够执行迁移但是如何在迁移中使用down()函数?
这是文档中的示例
defined('BASEPATH') OR exit('No direct script access allowed');
class Migration_Add_blog extends CI_Migration {
public function up()
{
$this->dbforge->add_field(array(
'blog_id' => array(
'type' => 'INT',
'constraint' => 5,
'unsigned' => TRUE,
'auto_increment' => TRUE
),
'blog_title' => array(
'type' => 'VARCHAR',
'constraint' => '100',
),
'blog_description' => array(
'type' => 'TEXT',
'null' => TRUE,
),
));
$this->dbforge->create_table('blog');
}
public function down()
{
$this->dbforge->drop_table('blog');
}
Run Code Online (Sandbox Code Playgroud)
在我的页面中,我设置了这样的迁移:
class Migrate extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->library('migration');
}
public function index() …Run Code Online (Sandbox Code Playgroud) codeigniter ×10
php ×8
email ×1
file-upload ×1
joomla ×1
mandrill ×1
mysql ×1
nginx ×1
phpexcel ×1
xls ×1