也許我的問題是一個簡單的問題,但我無法在文檔中找到答案,我希望有人可以提供幫助。Perl/mod_perl:將use'd模塊映射到具有特殊字符的路徑
問:哪些是映射文件名和文件系統路徑的規則,以使用'D/要求倒是模塊和用於包名稱聲明,尤其是當有使用的非標準像點或逗號的符號?對於mod_perl的PerlModule和PerlRequire與這些場景相關的Apache指令,也很高興找到類似的答案。
舉一個具體的examle,我必須位於與點和逗號像
/var/www/projects/my.awesome.project,with,comma/code的路徑mod_perl的項目,我必須在Apache的 的conf文件加載一個模塊的代碼:
PerlModule my.awesome.project,with,comma::code::MyModule
我也要申報包像
package my.awesome.project,with,comma::code::MyModule;
(從@INC點我的自定義路徑之一到/ var/WWW /項目)
當然這不起作用。這些路徑必須映射到別的東西。或者根本不可能,每個人都必須使用只包含字母數字符號和下劃線的路徑?
非常感謝您的幫助/回答。
謝謝你的回答,cjm。
我被告知「::」到「/」映射 – ArtM 2011-04-13 17:38:15
對不起另一條消息。我是新來的,「編輯5分鐘」對我來說是一個巨大的勝利。我被告知有關「::」到「/」的映射,並且我並沒有對包名稱進行識別。但我的問題更多來自mod_perl域而不是純Perl。我的意思是,當腳本文件名映射到帶有附加的「Apache :: ROOT」前綴並映射到「_2e」的句點的內部程序包模塊時,可能存在像Apache :: Registry所使用的_hidden_映射。 – ArtM 2011-04-13 17:52:57
@ArtM,不,mod_perl不會像普通包那樣做任何事情。 Apache :: Registry做到了這一點,因爲它處理的是多個腳本,所有這些腳本都是「main」包,並使它們共存。 – cjm 2011-04-13 18:54:55