2012-07-06 14 views
7

का उपयोग करके मैं hiiocs के बाहर yii संरक्षित फ़ोल्डर कैसे रख सकता हूं मैं वर्तमान में एक PHP वेब अनुप्रयोग विकसित कर रहा हूं जो वाईआई फ्रेमवर्क का उपयोग करता है।नेटबीन्स

जैसा कि मैं वाई ब्राउज़र द्वारा कुछ फ़ाइलों को वेब ब्राउज़र से सीधे पहुंच को रोकना चाहता हूं, मैंने दोनों फ्रेमवर्क और संरक्षित फ़ोल्डरों को htdocs फ़ोल्डर के बाहर ले जाया। Yii बूटस्ट्रैप फ़ाइल
-

/apache22/htdocs

/apache22/htdocs/myproject/index.php:

एक परिणाम के रूप में, मैं के साथ निम्न फ़ोल्डर सेटअप समाप्त हो गया/apache22/htdocs/MyProject/सीएसएस
/apache22/htdocs/MyProject/js
/apache22/htdocs/MyProject/छवियों

/apache22/vendor/yii-1.1.10 - Yii ढांचे फ़ोल्डर से बाहर दस्तावेज़ों को जड़

/apache22/htdocs-निजी/MyProject/संरक्षित
/apache22/htdocs-निजी/MyProject/क्रम

जैसा कि आप देख सकते हैं, केवल बूटस्ट्रैप फ़ाइल और कुछ अन्य आवश्यक सीएसएस, जेएस और छवि फ़ाइलों को सीधे वेब ब्राउज़र से एक्सेस किया जा सकता है। Yii कोर फ्रेमवर्क और अन्य अनुप्रयोगों जैसे Yii द्वारा संरक्षित और रनटाइम फ़ोल्डरों द्वारा उत्पन्न विशिष्ट एप्लिकेशन निजी फ़ाइलें मेरे एप्लिकेशन वेब रूट के बाहर स्थित हैं।

हालांकि यह सेटअप वाईआई ढांचे द्वारा अनुशंसित के रूप में ठीक और सुरक्षित है, जबकि नेटबीन में उन सभी को एक साथ रखकर मैं इस अलगाव में असमर्थ हूं। ऐसा लगता है कि नेटबीन मुझे मेरे वेबसर्वर में अलग-अलग फ़ोल्डर स्तरों में स्थित एक ही प्रोजेक्ट में फ़ाइलों की अनुमति नहीं देता है।

मैं सोच रहा हूं कि अलग-अलग नेटबीन परियोजनाएं बनाने का एकमात्र समाधान होगा या नहीं: एक सार्वजनिक वेबसाइट भाग के लिए और दूसरा निजी वेबसाइट भाग के लिए।

कोई सुझाव?

सर्वश्रेष्ठ सादर।

+0

(स्थानीय) सिमलिंक के बारे में क्या? – adamors

+0

इसके अलावा यहां जवाब देखें: http://stackoverflow.com/q/6263902/545925। – adamors

+0

@ Örs आपके उत्तरों के लिए धन्यवाद। खैर मैं यह उल्लेख करना भूल गया कि मैं वर्तमान में विंडोज 7 मंच का उपयोग कर रहा हूं। मैंने आपके सुझाए गए लिंक की भी जांच की लेकिन मेरा मुद्दा यह है कि मैं नेटबीन में सभी फाइलों को संपादित करने में भी सक्षम होना चाहता हूं क्योंकि वे आवश्यक रूप से बाहरी पुस्तकालय नहीं हैं। वास्तव में सभी फाइलें परियोजना का हिस्सा हैं। – edilima

उत्तर

2

हालांकि यह आपकी समस्या का आंशिक रूप से समाधान हो सकता है, लेकिन आप अपने प्रोजेक्ट में एक अतिरिक्त शामिल पथ जोड़ सकते हैं।

मान लीजिए /apache22/htdocs/myproject/ आपके प्रोजेक्ट फ़ोल्डर को नहीं है।

  • सही परियोजना के नाम पर क्लिक
  • चयन "गुण"
  • चुनें "पीएचपी शामिल पथ"
  • क्लिक "फ़ोल्डर जोड़ें ..."
  • जोड़ने /apache22/htdocs-private/myproject/

यह अब "पथ शामिल करें" के तहत बाएं साइडबार में दिखाई देना चाहिए। लेकिन ऐसा लगता है कि आप वहां से प्रतिबद्ध नहीं हैं।

NetbeansProjects/MyProject/www NetbeansProyects/MyProject/संरक्षित

वेब सर्वर पथ के बाहर पूरी तरह से है कि:

0

मैं इस पथ संरचना है। फिर जब मैं अपने कोड का परीक्षण करना चाहता हूं, तो मैं एक साधारण खोल स्क्रिप्ट का उपयोग करता हूं (यह विंडोज़ पर एक .bat हो सकता है) जो फ़ाइलों को उन स्थानों पर प्रतिलिपि बनाता है जहां उन्हें होना चाहिए। तो जब मैं परीक्षण करना चाहता हूं तो F6 दबाकर, इसे सभी को "तैनात"

इस चाल को करने में सक्षम होने के लिए आपको "कॉन्फ़िगरेशन चलाएं" पर अपनी "तैनाती स्क्रिप्ट" निष्पादित करने के लिए अपनी प्रोजेक्ट को कॉन्फ़िगर करना चाहिए। यहाँ मेरा है, मुझे यकीन है कि आप विंडोज के लिए यह अनुकूलित कर सकते हैं कर रहा हूँ:

भागो के रूप में: स्क्रिप्ट (कमांड लाइन में चलने वाले)

पीएचपी दुभाषिया:/bin/bash

सूचकांक फ़ाइल : up_sync.sh

कार्य निर्देशिका:/घर/उपयोगकर्ता/NetbeansProjects/MyProject/

+०१२३५१६४१०६

जहां up_sync.sh फ़ाइल आपकी .bat फ़ाइल होगी जो निर्देशिकाओं को उनके संबंधित स्थानों पर कॉपी करेगी।