विंडोज 7 पर WAMP 403 निषिद्ध संदेश


101

मैंने अपनी विंडोज़ 7 मशीन पर WAMP संस्करण 2.1 स्थापित किया है। जब मैं अपने ब्राउज़र में लोकलहोस्ट पर ब्राउज़ करता हूं, तो WAMP सर्वर पेज दिखाई देता है।

लेकिन जब मैं अपने ब्राउज़र में अपने आईपी को ब्राउज़ करता हूं, तो मुझे संदेश मिलता है

403 निषिद्ध: आपके पास इस सर्वर तक पहुँचने की अनुमति नहीं है।

कोई सुझाव?


अपने अपाचे सर्वर तक पहुँच के अलावा अन्य पते से मना किया है 127.0.0.1में httpd.conf(अपाचे के कॉन्फ़िग फ़ाइल)
Nasreddine

मैंने इसे ठीक किया, अब मैं अपने phpMyAdmin में 403 मना कर रहा हूं, इसके लिए कोई सुझाव?
जेक

वहाँ भी है phpmyadmin.confकि 'लोकलहोस्ट / phpmyadmin' उर्फ ​​के लिए निर्देश शामिल हैं
Nasreddine

अगर आप यहाँ विंडोज 8 के लिए हैं तो इस stackoverflow.com/questions/13945783/…
shabby

जवाबों:


126

अपने अपाचे सर्वर तक पहुँच के अलावा अन्य पते से मना किया है 127.0.0.1में httpd.conf(अपाचे के कॉन्फ़िग फ़ाइल):

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

वही आपके PHPMyAdmin एक्सेस के लिए जाता है, कॉन्फिग फाइल है phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
</Directory>

आप उन्हें सभी आईपी पते से कनेक्शन की अनुमति देने के लिए सेट कर सकते हैं जैसे कि:

AllowOverride All
Order allow,deny
Allow from all

7
यह निश्चित रूप से किसी भी आईपी पते से पहुंच खोलेगा, लेकिन यह थोड़ा खतरनाक नहीं है? '127.0.0.1' से अनुमति देने का नियम स्थानीय पहुंच की अनुमति देने के लिए पर्याप्त होना चाहिए, यदि वह यहां मुख्य उद्देश्य है, तो 127.0.0.1 मूल रूप से नेटवर्क एडॉप्टर पर एक पाश है। यदि आप एड्रेस बार 'http': //127.0.0.1: {portNumber} / {folderOrFileName} 'टाइप करते हैं तो यह ठीक काम करना चाहिए। यह लोकलहोस्ट का उपयोग करने के समान ही काम करना चाहिए, लेकिन मैंने पाया है कि कुछ ब्राउज़रों के पास किसी कारण से स्थानीयहोस्ट के साथ समस्या है।
जेरेमी

मैं उस अंतिम टिप्पणी में अपनी पता पंक्ति को प्रारूपित नहीं कर सकता, इसलिए इसमें एक अतिरिक्त "'" है कि यदि किसी को भ्रमित करता है तो क्षमा करें।
जेरेमी

नोट: फ़ाइल डिफॉल्ट सेट करती है जो बाद में एक समय में ओवरराइड हो जाती है, इसलिए सुनिश्चित करें कि ये रेखाएं ओवरराइड्स के बाद जाती हैं।
मीटार

3
WAMP सिस्टम ट्रे मेनू से "सभी सेवाओं को फिर से शुरू करें" (या हालांकि आप इसे करना न भूलें)।
प्लमर

12
के लिए अपाचे संस्करण 2.4.x की जगह Require localके साथ Require all grantedमें httpd.conf फ़ाइल के अंदर <Directory "c:/wamp/www/">टैग तो सभी सेवाओं को पुनरारंभ करें
राकेश

62

मैं एक सरल तय मिला ...

हालांकि आइकन हरा था WAMP अभी भी "पुट ऑनलाइन" होना चाहिए (मेनू का अंतिम आइटम जब बाईं ओर का आइकन होगा)।

उसके बाद मेरी पहुंच सामान्य थी।


3
वास्तव में, इसे एक स्वीकृत उत्तर के रूप में चिह्नित किया जाना चाहिए। धन्यवाद दोस्त।
ummahusla

इस समाधान के लायक एक अपवोट है, क्योंकि जब आप वास्तविक रूप
पियरे-यवेस गुइलेमेट

यह मेरे लिए भी तय है। हालाँकि मेरे मामले में मुझे पहले "पुट ऑफलाइन" करना पड़ा, फिर "पुट ऑनलाइन" और बिना किसी अन्य बदलाव के मेरी कॉन्फिग फाइलों पर काम किया! धन्यवाद!!
ओसमर

1
दरअसल, मैंने उन सभी चीजों को पहले, स्वीकृत उत्तर में बनाना शुरू किया। और इससे कोई फायदा नहीं हुआ। फिर मैंने इसे यहाँ देखा, और मैंने सोचा कि 'कोई रास्ता नहीं यह हो सकता है ...', लेकिन, यह वह था और यह काम किया।
फसेलडिएब

Supercalifragilisticexpialidocious!
वाहिद

25

मेरे लिए "स्थानीय की आवश्यकता है" को शामिल करने में त्रुटि 403 को हल करने में मदद मिली। अन्य विन्यास फाइल इस तरह दिखती है:

Alias /mytest/ "C:/mytest/" 

<Directory "C:/mytest/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
    Require local
</Directory>

3
यह अपाचे 2.4.9 का उपयोग करते हुए, मेरे लिए भी काम करता था। काफी समय से इसकी तलाश की जा रही है। धन्यवाद!
जोनाथन लिडबेक

Options Indexes FollowSymLinks MultiViewsयह भी आवश्यक है
हम्माद खान

"C: / mytest /" भाग को जोड़ने का कोई कारण? इसका कोई प्रभाव नहीं दिखता है, और अंत में ए / छोड़ते हुए जैसा कि मानक है ठीक वैसे ही काम करने के लिए लगता है
स्क्वाज़

यदि आप अपने स्थानीय नेटवर्क के अन्य उपकरणों पर अपनी साइट को खोलना चाहते हैं, तो '
राकेश

"सभी से अनुमति दें" को जोड़ना मेरे लिए था।
रेक्स द स्ट्रेंज

10

यदि आप बाहर से WAMP सर्वर तक पहुँच प्रदान करने के साथ ठीक हैं, तो httpd.conf में अनुमतियाँ बदलने का समाधान काम करेगा।

यदि आप ऐसा नहीं करना चाहते हैं, तो आपको बस इतना करना है कि विंडोज़ को "लोकलहोस्ट" डोमेन 127.0.0.1 पर इंगित करता है। आप अपने सिस्टम निर्देशिका में होस्ट्स फ़ाइल को संपादित करके ऐसा कर सकते हैं।

फ़ाइल को यहाँ रखा गया है: C: \ Windows \ System32 \ driver \ etc \ मेजबान

डिफ़ॉल्ट विंडोज 7 जहाजों के साथ:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost

आपको लोकलहोस्ट के लिए मैपिंग को अन-कमेंट करना होगा:

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
#   ::1         localhost

नोट: आप मेजबानों फ़ाइल को केवल-पढ़ने के लिए फ़ाइल के रूप में संपादित नहीं कर पाएंगे। संपादित करने के लिए, आपको व्यवस्थापक बनना होगा, फ़ाइल को किसी अन्य स्थान पर कॉपी करना होगा, उसे संपादित करना होगा और फिर वापस उसे निर्देशिका में कॉपी करना होगा।

मैं मेजबान फ़ाइल के परिवर्तन की सिफारिश नहीं करता हूं। Httpd.conf फ़ाइल की अनुमतियों का उपयोग करें। यदि आप सर्वर को बाहर से एक्सेस नहीं करना चाहते हैं, तो केवल होस्ट फ़ाइल दृष्टिकोण का उपयोग करें।


8

फ़ाइल httpd-vhosts.conf पर कोड की निम्नलिखित पंक्तियों को जोड़ने का प्रयास करें:

<VirtualHost *:80>
ServerAdmin serveradmin@host.com
DocumentRoot "C:\wamp\www"
ServerName localhost
</VirtualHost>

7

एक और बात मुझे पता चली है कि यदि आपका नेटवर्क एडाप्टर IPV6 का उपयोग करता है, तो यह 127.0.0.1 के रूप में नहीं बल्कि :: 1 दिखाएगा

मैंने जो किया, वह यह है:

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
</Directory>

वही आपके PHPMyAdmin एक्सेस के लिए जाता है, config फाइल phpmyadmin.conf है:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from ::1
</Directory>

मुझे लगता है कि यह उत्तर वास्तव में उस महत्वपूर्ण बात को संबोधित करता है जो पूछी जा रही है, अर्थात जब IPv6 सक्षम होता है, तो लोकलहोस्ट IPv6 पते (:: 1) का समाधान करता है और जिसका अर्थ है कि अनुरोध करने वाला पता भी IPv6 पता होगा (:: 1) जो 127.0.0.1 के समान नहीं है, जो एकमात्र ऐसा पता है जिसमें से कनेक्शन की अनुमति है। इसके अलावा, लोकलहोस्ट लोकल DNS सर्वर के जरिए डिफॉल्ट रूप से (मेजबानों को नहीं) होस्ट करता है और इसे इस तरह छोड़ने के लिए मेरे हिसाब से यह सिर्फ बेहतर है और इसके बजाय IPv6 को डिसेबल कर दें ताकि लोकलहोस्ट 127.0.0.1 में बदल जाए या ऊपर जैसा बदलाव / शामिल हो।
फास्ट-रिफ्लेक्स

बस "अनुमति दें :: 1:" से "c: \ wamp \ alias \ phpmyadmin.conf फ़ाइल" जोड़ने से phpmyadmin 403 समस्या हल हो गई।
इरोमन

4

अगर आपने लोकलहोस्ट / phpmyadmin / का उपयोग किया है

बस उपयोग करें

PHPMyAdmin के लिए 127.0.0.1/phpmyadmin/

SQLBuddy के लिए 127.0.0.1/sqlbuddy/

या यदि आपने लोकलहोस्ट का उपयोग किया है: 8080 / phpmyadmin /

PHPMyAdmin के लिए 127.0.0.1:8080/phpmyadmin/

SQLBuddy के लिए 127.0.0.1:8080/sqlbuddy/


4

में डमी तत्वों को हटाने के लिए याद रखें httpd-vhosts.conf

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

धन्यवाद! इसने इसे ठीक कर दिया।
स्टीव

4

के लिए अपाचे संस्करण 2.4.x बस की जगह Require localके साथ Require all grantedमें httpd.conf अंदर फ़ाइल <Directory "c:/wamp/www/">टैग तो सभी सेवाओं को पुनरारंभ करें


1
इसने मेरे लिए चाल चली। अजीब बात यह है कि 2 अन्य VirtualHosts (httpd-vhosts.conf में) को 'स्थानीय की आवश्यकता नहीं है' या 'सभी की आवश्यकता है', और फिर भी ठीक काम करते हैं। ¯_ (¯) _ / ¯
kmdsax

3

Wamp 3.1.3 और Apache 2.4 के लिए मुझे बस अपनी httpd-vhosts.conf फाइल में 1 लाइन बदलनी थी।

  1. Httpd-vhosts.conf खोलें
  2. "सभी की आवश्यकता है" को "स्थानीय की आवश्यकता" बदलें
  3. सभी सेवाओं को पुनरारंभ करें

मैं तब अन्य कंप्यूटरों से अपने अपाचे सर्वर को प्राप्त करने में सक्षम था।

इस वीडियो को श्रेय दें: https://www.youtube.com/watch?v=Sy_f6wBGnjI


2

इस समस्या के कई कारण हो सकते हैं

मैंने जो अनुभव किया है वे हैं:
1) 127.0.0.1 localhostमेजबान फ़ाइल में प्रविष्टि की नकल की गई थी
2) अपाचे mod_rewriteसक्षम नहीं था

कारण चाहे जो भी हो, आपके फ़ोल्डर का बैकअप लेने के लिएwww , vhost कॉन्फ़िगरेशन फ़ाइल (और httpd कॉन्फ़िगरेशन फ़ाइल) मदद करेगा। और इस तरह की प्रक्रिया में कुछ मिनट लगते हैं।

सौभाग्य


2

मैंने सभी सुधारों को पढ़ा और आजमाया लेकिन किसी ने काम नहीं किया। अंत में मैंने पाया कि वैम्प सर्वर का लोगो हरा है लेकिन "ऑनलाइन होना चाहिए"। इतना आसान और एक त्वरित फिक्स आपके जाँच के बाद PHPMyAdmin.Cofgऔर HttPD.cofgबस ऑनलाइन पर क्लिक करें


1

मैंने ऊपर के विन्यास की कोशिश की और केवल इसने मेरे WAMP Apache 2.4.2 विन्यास के लिए काम किया। अपने विंडोज होस्ट फ़ाइल में डोमेन नाम के बिना कई रूट साइट के लिए, http://locahost:8080, http://localhost:8081, http://localhost:8082इस विन्यास का उपयोग करें:

#ServerName localhost:80
ServerName localhost

Listen 8080
Listen 8081
Listen 8082
#..... 
<VirtualHost *:8080>
    DocumentRoot "c:\www"
    ServerName localhost
    <Directory "c:/www/">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
<VirtualHost *:8081>
    DocumentRoot "C:\www\directory abc\svn_abc\trunk\httpdocs"
    ServerName localhost
    <Directory "C:\www\directory abc\svn_abc\trunk\httpdocs">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
#<VirtualHost *:8082></VirtualHost>.......

1

मुझे इस समस्या का सामना विंडोज़ पर wamp से करना पड़ा। httpd-vhosts.conf पर निम्नलिखित कोड जोड़कर मेरे लिए समस्या हल हो गई।

<VirtualHost *:80>
  DocumentRoot "F:/wamp_server/www/"
  ServerName localhost
</VirtualHost>

1

आपके प्रश्न के लिए धन्यवाद। मैं अब wamp 3 का उपयोग कर रहा हूँ। और मुझे आपके प्रश्न के तहत ऐसा करने का एक सरल उत्तर मिल गया है। लेकिन उस उत्तर को wamp 3 पर थोड़ा बदलना चाहिए। चरण निम्नानुसार हैं:

  1. राइट क्लिक करें wamp आइकन
  2. Wamp Setting चुनें
  3. मेनू आइटम पर क्लिक करें: ऑनलाइन / ऑफ़लाइन
  4. वाम आइकन पर क्लिक करें
  5. आप पाएंगे कि "पुट ऑनलाइन" नामक एक नया आइटम है

धन्यवाद, @ मिल्टनब।
स्मार्ट डु

1

यह पता लगाने के लिए मुझे हमेशा के लिए ले लिया।

C: \ WAMP \ बिन \ अपाचे \ apache2.4.9 \ conf \ अतिरिक्त \ httpd-vhosts.conf

इस फ़ाइल में आप कई उदाहरण वर्चुअल होस्ट फ़ाइलों को देखेंगे, जो इस तरह दिखती हैं:

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

बस इन प्रविष्टियों को हटा दें और इनकी जगह लें:

<VirtualHost *:80>
    ServerAdmin serveradmin@host.com
    DocumentRoot "C:\wamp\www"
    ServerName localhost
</VirtualHost>

आपको निश्चित रूप से यह सुनिश्चित करने की आवश्यकता है कि आपके अन्य बत्तख एक पंक्ति में हैं लेकिन यह मेरे लिए उस समाधान के साथ है जिसने काम किया।


0

नमस्ते वहाँ 2 समाधान हैं:

  1. पाठ फ़ाइल (httpd.conf) में पोर्ट 80 से 81 बदलें और 127.0.0.1:81 पर क्लिक करें

  2. नेटवर्क सेटिंग बदलने के लिए कंट्रोल पैनल - नेटवर्क और इंटरनेट - नेटवर्क और शेयरिंग सेंटर पर जाएं

क्लिक करें -> स्थानीय क्षेत्र कनेक्शन का चयन करें -> प्रॉम्प्टिस चेक-अन्य में ..... और --- अन्य एलो .....


0

मुझे यह समस्या भी हुई। मेरी समस्या का मार्ग यह था कि मैंने अपनी vhosts.conf फ़ाइल में एक गलती की थी। यदि आप vhosts का उपयोग कर रहे हैं तो यह जांचने की दूसरी बात है


0

Httpd.conf में यह कॉन्फ़िगरेशन मेरे लिए ठीक है।

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1 ::1
</Directory>

0

सुनिश्चित करें कि आप अपने .conf फ़ाइल में अपने पथ नामों में एक Windows 'निर्देशिका विभाजक वर्ण (बैकस्लैश) का उपयोग नहीं कर रहे हैं, भले ही आप Windows पर हों। अपाचे उन्हें समझ में नहीं आता है, लेकिन फिर भी शुरू होगा और फिर आउटपुट ए 403 Forbidden Message

गलत:

<Directory "c:\websites\my-website\">

सही:

<Directory "c:/websites/my-website/">

0

हैरानी की बात है, DocumentRoot में वर्ग कोष्ठक (और संबंधित, जैसे <निर्देशिका>) पथ भी त्रुटि का कारण हो सकता है 403:

  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master[bang]" 403 के साथ असफल रहा, जबकि
  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master" ठीक काम किया।

(मैं अपाचे पथ से बचने के लिए परेशान नहीं था, यदि कोई हो, तो इसके बजाय केवल पथ का नाम बदला। यदि किसी को पता है, तो टिप्पणियों का स्वागत है।)


0

मेरा समाधान एन्कोडेड फ़ाइलों के लिए एन्कोडिंग को अक्षम करना था (ये फाइलें विंडोज़ में हरी हैं)। Ive को ये फाइलें MAC कंप्यूटर से मिलीं और इसे डिफ़ॉल्ट रूप से एन्क्रिप्ट किया गया।

Ive select these files > right click > properities > general tab > andvanced > uncheck encrypt files...

और वोइला यह काम करता है।


0

मैंने .htaccess फ़ाइल में गड़बड़ी को साफ़ करने के अलावा सारा सामान आज़मा लिया है।

Www / निर्देशिका पर जाएं और किसी अन्य फ़ोल्डर में .htaccess फ़ाइल की एक प्रतिलिपि बनाएँ। फिर .htaccess मूल फ़ाइल की सभी पंक्तियाँ साफ़ करें । और इस लाइन को जोड़ें,

रिवरटाइंगइन ऑन

फिर सर्वर को पुनरारंभ करें। इससे मेरी समस्या हल हो गई है और मुझे अपने सभी लोकलहोस्ट साइटों की पहुँच मिल गई है। आशा है कि यह तुम्हारा भी हल होगा।


0

अपाचे 2,4 पर भी आपको इसे निर्देशिका निर्देश में जोड़ने की आवश्यकता हो सकती है, यदि आपने httpd-vhosts.conf को शामिल करने का निर्णय लिया है।

डिफ़ॉल्ट रूप से आप C: \ में wamp इंस्टॉल कर सकते हैं, लेकिन फिर भी अपने वेब डेवलपमेंट को किसी अन्य स्थान पर तैनात करने का विकल्प चुनें।

Vhosts.conf के अंदर ऐसा करने के लिए आप इस निर्देश को जोड़ सकते हैं:

<Directory "e:/websites">
    Options Indexes FollowSymLinks MultiViews
    DirectoryIndex index.php
    AllowOverride All
  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Deny,Allow
    Allow from all
    Allow from localhost ::1 127.0.0.1
  </IfDefine>
</Directory>

0

सुनिश्चित करें कि, निर्देशिका में फ़ाइल c:/wamp/apps/phpmyadmin3.1.3.1/का नाम, phpMyAdmin.ff ( Alias /phpmyadmin "c:/wamp/apps/phpmyadmin3.1.3.1/") में नाम (या संस्करण) से मेल खाता है


0

मैंने पाया है कि यदि आप ammps का उपयोग कर रहे हैं कि किसी कारण से इसकी हमेशा मनाही है जब आपके रूट फोल्डर में है तो मैंने इसे अपने रूट फोल्डर के ऊपर डायरेक्टरी में रखा है और इसे httpd.conf उपयोग करने में एक अन्य नाम दिया है

Alias /phpmyadmin "C:/Program Files (x86)/Ampps/phpMyAdmin"

कृपया ध्यान दें कि मैं ammps का उपयोग कर रहा हूं और मुझे नहीं पता कि यह दूसरों के लिए काम करेगा या नहीं, लेकिन यह एक कोशिश के लायक है;)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.