2016-03-22 78 views
1

我無法在我的apache中安裝PDFlib以在我的wordpress應用程序中使用。配置apache + PDFlib + wordpress

我跟着教程PHP

我還是做了下面的命令,因爲我在關於安裝另一個疑問想:

echo "katleia.com.br localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf 
sudo a2enconf fqdn 

這是katleia.com.br/worpress我把路線在我的瀏覽器上訪問我的頁面。

然而,當我發出命令:

service apache2 restart 

它的下一個出口,出現錯誤:

* Restarting web server apache2           [fail] 
* The apache2 configtest failed. 
Output of config test was: 
AH00526: Syntax error on line 1 of /etc/apache2/conf-enabled/fqdn.conf: 
Invalid command 'katleia.com.br', perhaps misspelled or defined by a module not included in the server configuration 
Action 'configtest' failed. 
The Apache error log may have more information. 

有人可以幫我配置的PDFlib?因爲我花了大約四個小時的時間試圖讓它在wordpress中工作,沒有什麼是正確的。

我已經注意到不想安裝wordpress插件了。

UPDATE

要撤消此命令:

echo "katleia.com.br katleia" | sudo tee /etc/apache2/conf-available/fqdn.conf 

UPDATE2

我設法讓他停下來給錯誤,但仍然無法正常工作。

我做了下面的命令,以便能夠重新啓動服務器:

echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf 
sudo a2enconf fqdn 
service apache2 restart 

這個我的服務器返回工作崗位,我添加了一個PHP文件的代碼是在點擊後命名按鈕進行測試:

try{ 
    $pdf = new PDFlib(); 
} catch (Exception $e) { 
    echo "error: ".$e->getMessage()."<br>"; 
} finally { 
    // open a file 
    pdf_open_file($pdf, "test.pdf"); 
    // start a new page (A4) 
    pdf_begin_page($pdf, 595, 842); 
    // get and use a font object 
    $arial = pdf_findfont($pdf, "Arial", "host", 1); 
    pdf_setfont($pdf, $arial, 10); 
    // print text 
    pdf_show_xy($pdf, "There are more things in heaven and earth, Horatio,",50, 750); 
    pdf_show_xy($pdf, "than are dreamt of in your philosophy", 50,730); 
    // end page 
    pdf_end_page($pdf); 
    // close and save file 
    pdf_close($pdf); 
} 

他沒有任何錯誤,但是當我嘗試文件時找不到任何地方。

UPDATE3

有這個命令這在理論上是得到一個輸出顯示,使PDFlib運行,但它並沒有顯示任何東西時,我做我的提示:

# php -i |grep PDF 
PDFlib 
PDFlib Support => enabled 
PDFlib GmbH Binary-Version => 7.0.5p3 

我可以做這部分工作是忘記添加extension = pdf.so文件/etc/php5/cli/php.ini。在我重新啓動Apache後,他給出了預期的輸出。

但仍然沒有出現任何地方的test.pdf

UPDATE4

try { 
    $p = new PDFlib(); 

    /* open new PDF file; insert a file name to create the PDF on disk */ 
    if ($p->begin_document("", "") == 0) { 
     die("Error: " . $p->get_errmsg()); 
    } 

    $p->set_info("Creator", "hello.php"); 
    $p->set_info("Author", "Rainer Schaaf"); 
    $p->set_info("Title", "Hello world (PHP)!"); 

    $p->begin_page_ext(595, 842, ""); 

    $font = $p->load_font("Helvetica-Bold", "winansi", ""); 

    $p->setfont($font, 24.0); 
    $p->set_text_pos(50, 700); 
    $p->show("Hello world!"); 
    $p->continue_text("(says PHP)"); 
    $p->end_page_ext(""); 

    $p->end_document(""); 

    $buf = $p->get_buffer(); 
    $len = strlen($buf); 

    header("Content-type: application/pdf"); 
    header("Content-Length: $len"); 
    header("Content-Disposition: inline; filename=teste_do_katleia.pdf"); 
    print $buf; 
} 
catch (PDFlibException $e) { 
    die("PDFlib exception occurred in hello sample:\n" . 
    "[" . $e->get_errnum() . "] " . $e->get_apiname() . ": " . 
    $e->get_errmsg() . "\n"); 
} 
catch (Exception $e) { 
    die($e); 
} 

$p = 0; 

$len = mb_strlen($buf, 'ASCII'); 
exit(); 

與上面的代碼可以生成PDF並查看它的網站上,但是這不是我想要的。我想要的是將其保存在一個文件夾中,然後在另一頁上恢復。 有誰知道我必須更改此代碼才能做到這一點?

回答

1

With the above code can generate a pdf and view it on the site, but that's not what I want. What I want is to save it in a folder

你begin_document()之前,應檢查該行的註釋:

/* open new PDF file; insert a file name to create the PDF on disk */ 
if ($p->begin_document("", "") == 0) { 

除了你應該檢查的的PDFlib 7教程,第3.1.4章「生成PDF文檔內存「的更多細節。

提示:在光盤上創建文件時,不能使用get_buffer(),它從內存中獲取PDF數據。 (請參閱API參考資料,該資料也包含在doc目錄中的PDFlib 7包中)