2014-03-02 92 views
1

我在perl下有一個完整的web站點在cgi-bin下,但是現在,在客戶端,我將移動到MVC所有我的客戶端的東西..我決定這將是AJAX沉重的平滑過渡而不是完全刷新。Perl Dancer初始配置

在這一點上,根本沒有問題。

第一個問題是,我想要做一個完整的perl restapi來澄清事情並充分利用backbonejs的優勢。

所以,在這一點上我已經somenting這樣的:

www.foo.com/cgi-bin/home.pl 
www.foo.com/cgi-bin/wines.pl 

...

讀了很多之後,我想用舞者,因爲似乎很簡單,快捷。

我的所有這些行後的主要問題是簡單..

我應該在哪裏創建我的項目? 「Dancer -a App」 它應該在cgi-bin內創建嗎?我正在開發Windows機器,但我的主機是Ubuntu的,所以,你們可以告訴我什麼是最常見的目錄?

小時後試圖與工作,沒有什麼..仍然無法..

我可以運行我的應用程序像「perl的斌/ MyApp.pl」獨立,但在部署什麼..

我httpd.conf中

<virtualhost *:80> 
    ServerName localhost 
    DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs/MyApp/public/" 
    ServerAdmin [email protected] 

    <directory "C:/Program Files/Apache Group/Apache2/htdocs/MyApp/public/"> 
     AllowOverride None 
     Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
     Order allow,deny 
     Allow from all 
     AddHandler cgi-script .cgi 
    </Directory> 

ScriptAlias/C:/Program Files/Apache Group/Apache2/htdocs/MyApp/public/dispatch.cgi/ 

我到底做錯了什麼?

回答

0

我平時堅持我的舞者項目~/src/My-Dancer-Proj

然後,而不是使用CGI,我使用fastcgi。我的httpd.conf看起來像這樣...

<VirtualHost *:80> 
    ServerName myserver.com 
    DocumentRoot /home/my_user/src/My-Dancer-Proj/public 
    <Directory "/home/my_user/src/My-Dancer-Proj/public"> 
    AllowOverride None 
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
    Order allow,deny 
    Allow from all 
    AddHandler fcgid-script .fcgi 
    </Directory> 

    RewriteEngine On 
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f 
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ /dispatch.fcgi$1 [QSA,L] 
</VirtualHost> 
1

有不同的問題。讓我看看我能不能幫忙。

我應該在哪裏創建我的項目? 「Dancer -a App」是應該在cgi-bin內創建的嗎?

編號請參閱http://metacpan.org/pod/Dancer::Deployment如何設置您的舞者環境。

我在windows機器下開發,但我的主機是ubuntu,所以,你們能告訴我什麼是最常用的目錄嗎?

我這樣做,但沒有'普通'。配置您的本地系統上的舞者應用程序,並避免絕對路徑。然後把完整的應用程序目錄到你的Ubuntu系統並在那裏運行。

對於開發(在Windows上),我通常使用perl bin/app.pl來開發應用程序。在* nix的系統我用接龍(有時背後nginx的),但僅此而已覆蓋Deployment

HTH