2011-09-21 16 views
18

मुझे हमेशा यह संदेश मिलता है जब मैं अपने phpMyAdmin तक पहुंचना चाहता हूं।phpMyAdmin + CentOS 6.0 - निषिद्ध

w3m localhost/phpmyadmin 

Forbidden 

You don't have permission to access /phpmyadmin/ on this server. 

Apache/2.2.15 (CentOS) Server at localhost Port 80 

स्थापित करें कदम:

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt 
yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2- 2.el6.rf.x86_64.rpm 
yum install phpmyadmin 

नाम जोड़ें

vi /etc/httpd/conf.d/phpmyadmin.conf 
Alias /phpmyadmin /usr/share/phpmyadmin 
Alias /phpMyAdmin /usr/share/phpmyadmin 
Alias /mysqladmin /usr/share/phpmyadmin 

कुकी से बदलें में http

vi /usr/share/phpmyadmin/config.inc.php 
[...] 
/* Authentication type */ 
$cfg['Servers'][$i]['auth_type'] = 'http'; 
[...] 

पुनः प्रारंभ

012,351,
/etc/init.d/httpd restart 

SELinux -/etc/httpd

drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 . 
drwxr-xr-x. root root system_u:object_r:etc_t:s0  .. 
drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 conf 
drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 conf.d 
lrwxrwxrwx. root root system_u:object_r:httpd_log_t:s0 logs -> ../../var/log/httpd 
lrwxrwxrwx. root root system_u:object_r:httpd_modules_t:s0 modules -> ../../usr/lib64/httpd/modules 
lrwxrwxrwx. root root system_u:object_r:httpd_config_t:s0 run -> ../../var/run/httpd 

SELinux -/usr/share/phpmyadmin

drwxr-xr-x. root root system_u:object_r:usr_t:s0  . 
drwxr-xr-x. root root system_u:object_r:usr_t:s0  .. 
-rw-r--r--. root root system_u:object_r:usr_t:s0  browse_foreigners.php 
-rw-r--r--. root root system_u:object_r:usr_t:s0  calendar.php 
-rw-r--r--. root root system_u:object_r:usr_t:s0  changelog.php 
-rw-r--r--. root root system_u:object_r:usr_t:s0  chk_rel.phph 
. 
. 
. 
-rw-r--r--. root root system_u:object_r:usr_t:s0  view_create.php 

ओएस

centos-release-6-0.el6.centos.5.x86_64 

उत्तर

28

अपने httpd.conf फ़ाइल संपादित इस प्रकार है:

# nano /etc/httpd/conf/httpd.conf 

यहाँ निम्नलिखित लाइनों जोड़ें:

<Directory "/usr/share/phpmyadmin"> 
    Order allow,deny 
    Allow from all 
</Directory> 

समस्या निम्न आदेश:

# service httpd restart 

आपकी समस्या को हल नहीं किया जाता है, तो अपने SELinux को अक्षम करें।

+0

यह एक अंतरफलक सब के बजाय eth0 की तरह, मैं नेट – pouya

+0

साथ virtualbox उपयोग कर रहा हूँ से अनुमति देने के लिए बहुत बहुत धन्यवाद, समस्या था SELinux – mydreamadsl

+0

mydreamadsl में, आप व्याख्या कर सकते हैं आप इसे कैसे हल कर सकता है? – Damainman

-1

मुझे एक ही समस्या थी।

के बाद ही मैं php.ini चर में बदल

display_errors = बंद

को

display_errors = पर

Phpadmin काम कर .. पागल ....

+0

उस conf के पास phpmyadmin के साथ कुछ लेना देना नहीं है। ऐसा शायद इसलिए हुआ क्योंकि आपने पहले सही conf संपादित किया था लेकिन httpd को पुनरारंभ करना भूल गया था। फिर त्रुटियों को बदलने के बाद आपने पुनरारंभ किया और पिछला संपादन भी लागू किया गया था। – zozo

3

शुरू कर दिया मेरे पास दो दिनों के लिए एक ही मुद्दा था। अक्षम SELinux और सब कुछ लेकिन कुछ भी मदद की। और मुझे एहसास है कि यह एक छोटे से फिक्स के लिए सुरक्षा को अक्षम करने के लिए स्मार्ट नहीं हो सकता है। तब मैं इस आलेख पर आया - http://wiki.centos.org/HowTos/SELinux/ जो बताता है कि SELinux कैसे काम करता है। तो मैंने यही किया और यह मेरी समस्या को ठीक कर दिया।

  1. और phpmyadmin की पेरेंट निर्देशिका पर जाकर अपने मुख्य phpmyadmin निर्देशिका के लिए उपयोग (मेरा एचटीएमएल था) लेखन सक्षम:

    chcon -v --type=httpd_sys_content_t phpmyadmin 
    
  2. अब सूचकांक के लिए भी ऐसा ही।टाइपिंग द्वारा PHP:

    chcon -v --type=httpd_sys_content_t phpmyadmin/index.php 
    

    अब वापस जाएं और जांचें कि क्या आपको एक खाली पृष्ठ मिल रहा है या नहीं। यदि आप हैं, तो आप सही रास्ते पर हैं। यदि नहीं, तो वापस जाएं और अपनी httpd.config निर्देशिका सेटिंग्स की जांच करें। एक बार जब आप बिना किसी चेतावनी के खाली पृष्ठ प्राप्त करते हैं, तो आगे बढ़ें।

  3. अब चलाकर अपने phpmyadmin निर्देशिका में सभी फ़ाइलों के माध्यम से recurse:

    chron -Rv --type=httpd_sys_content_t phpmyadmin/* 
    

वापस अपने phpmyadmin पृष्ठ पर जाएँ और यदि आप देख रहे हैं कि तुम क्या जरूरत है देखते हैं। यदि आप ऐसे वेब सर्वर चला रहे हैं जो आपके नेटवर्क से बाहर पहुंच योग्य है, तो सुनिश्चित करें कि आप अपने SELinux को उचित सुरक्षा स्तर पर रीसेट कर लें। उम्मीद है की यह मदद करेगा!

21

मेरे CentOS 7 सर्वर पर उपरोक्त कॉन्फ़िगरेशन में से कोई भी मेरे लिए काम नहीं करता है। खोज के घंटे के बाद, कि क्या मेरे लिए काम किया है:

फ़ाइल संपादित phpMyAdmin.conf

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

और शीर्ष पर यह बदल देते हैं:

<Directory /usr/share/phpMyAdmin/> 
    AddDefaultCharset UTF-8 

    <IfModule mod_authz_core.c> 
    # Apache 2.4 
    <RequireAny> 
     #Require ip 127.0.0.1 
     #Require ip ::1 
     Require all granted 
    </RequireAny> 
    </IfModule> 
    <IfModule !mod_authz_core.c> 
    # Apache 2.2 
    Order Deny,Allow 
    Deny from All 
    Allow from 127.0.0.1 
    Allow from ::1 
    </IfModule> 
</Directory> 
+0

बिल्कुल सही .. यह मेरे लिए काम किया – sujithayur

+0

यह जवाब होना चाहिए। पूरी तरह से काम किया –

+0

इसके अतिरिक्त "yum install php" – Sourav301

6

मैं यहाँ प्रदान की सभी जवाब करने की कोशिश की: phpMyAdmin.conf संपादित करना, phpmyadmin फ़ोल्डर के लिए selinux संदर्भ बदलना, selinux को अक्षम करना ... लेकिन मुझे अभी भी वेब सर्वर से 'निषिद्ध' मिला है।

$ yum install php

फिर पुन: प्रारंभ httpd:

$ service httpd restart => centos के लिए 6 hots centos के लिए

$ systemctl restart httpd =>

मैं अंत में मैं क्या एडुअर्ड थिएल में याद आ रही थी पोस्ट here पाया 7 होस्ट

मुझे आश्चर्य हुआ है कि डब्ल्यू हाय php phpmyadmin के लिए पहली जगह पर निर्भरता के रूप में स्थापित नहीं है।

सादर, फ्रेड

+0

यह वही है जो मुझे मदद करता है और वास्तव में मुझे परेशान करता है - क्यों PHP एक पैकेज के लिए निर्भरता नहीं है, जिसके लिए इसे इसके नाम से भी आवश्यकता होती है ... – tymik

+0

यह मेरे लिए काम करता है! – Sourav301

+0

यह मेरे लिए काम किया। मैंने सोचा कि मैंने पहले PHP स्थापित किया है लेकिन फिर भी इसे 403 के अलावा एक अलग त्रुटि दी जानी चाहिए – Venura

0

ऊपर उल्लेख किया समाधान के गैर मेरे लिए काम किया। नीचे आखिरकार काम किया गया:

#yum update 
#yum install phpmyadmin 

सलाह दी जानी चाहिए, phpmyadmin कुछ घंटों पहले काम कर रहा था। मुझे नहीं पता कि क्या हुआ।

इस के बाद, ब्राउज़र के लिए जा रहा, मैं एक त्रुटि है कि कहा ./config.inic.php can't be accessed

#cd /usr/share/phpmyadmin/ 
#stat -c %a config.inic.php 
#640 
#chmod 644 config.inic.php 

यह दिखाता है कि फाइल अनुमति 640 थे, तो मैं उन्हें 644. Finially करने के लिए बदल गया, यह काम किया।

httpd को पुनरारंभ करना याद रखें।

#service httpd restart 
0

मैं क्योंकि मैं में जोड़कर इसे ठीक/उपयोग/शेयर/phpMyAdmin निर्देशिका पर नियमों का एक ही समस्या का सामना करना पड़ा है जब मैं यूआरएल

https://www.nameDomain.com/phpmyadmin 

मना संदेश दिखाता टेप, इस फाइल /etc/httpd/conf.d/phpMyAdmin.conf इस खंड में

<Directory /usr/share/phpMyAdmin/> 
    .... 
</Directory> 

नियमों के इन लाइन

<Directory /usr/share/phpMyAdmin/> 
    Order Deny,Allow 
    Deny from All 
    Allow from 127.0.0.1 
    Allow from ::1 
    Allow from All 
    ... 
</Directory> 

आप फ़ाइल को सहेजना है, तो आप अपाचे सेवा जो भी पद्धति के चयन को पुनः आरंभ service httpd graceful या service httpd restart यह अपनी नीति पर निर्भर करता है

सुरक्षा कारणों से एक आईपी पते की स्थापना करता है, तो आपके आईपी नहीं है के बाद एक कनेक्शन निर्दिष्ट कर सकते हैं बदलें, अन्यथा यदि आपका आईपी हर बार बदल जाता है तो आपको इसे भी बदलना पड़ता है।

<Directory /usr/share/phpMyAdmin/> 
    Order Deny,Allow 
    Deny from All 
    Allow from 127.0.0.1 
    Allow from ::1 
    Allow from 105.105.105.254 ## set here your IP address 
    ... 
</Directory> 

 संबंधित मुद्दे