वर्डप्रेस मुझे 404 पेज दे रहा है जो होमपेज को छोड़कर सभी पेजों के लिए नहीं मिला है


115

अचानक मैं अपनी वर्डप्रेस वेबसाइट पर जाता हूं और सभी पेज मुझे एक 404 पेज नहीं मिला पेज देते हैं। मैं मान रहा हूं कि समस्या पेरालिंक संरचना के साथ है, जिसे मैं कसम खा सकता हूं जिसे मैंने नहीं छुआ। पर्मलिंक सेटिंग "महीने और नाम" पर है।

मैंने इस समस्या के समान उदाहरणों पर ऑनलाइन शोध किया है और इसका बहुत कुछ .htaccessफ़ाइल के साथ क्या करना है ? मैंने खोजने की कोशिश की, लेकिन मैं नहीं कर सकता। शायद यह किसी तरह हटा दिया गया? यह कहाँ स्थित माना जाता है।

कोई भी सुझाव मददगार होगा

और निश्चित रूप से मैं छिपी हुई फाइलें देख सकता हूं।


सुझाव है कि आप इसे wordpress.stackexchange.com पर भी पूछें ।
जेम्स वाइसमैन

जवाबों:


95

.htaccess एक छिपी हुई फ़ाइल है, इसलिए आपको अपने ftp में दिखाई देने वाली सभी फ़ाइलों को सेट करना होगा।

मेरा सुझाव है कि आप अपनी पर्मलिंक संरचना को डिफ़ॉल्ट (? P = ID) पर लौटाएं ताकि आप सुनिश्चित करें कि .htaccess समस्या है।

उसके बाद, आप बस "महीना और नाम" संरचना को फिर से सेट कर सकते हैं, और देखें कि क्या यह काम करता है।

पुनश्च: क्या आपने 3.1 में अपग्रेड किया है? मैंने इस मामले में कुछ लोगों को प्लगइन मुद्दों के साथ देखा है।


1
हाँ, मैंने छिपी हुई फाइलें दिखाई हैं। मैंने डिफॉल्ट से perma पर आगे और पीछे स्विच किया है और यह डिफॉल्ट में काम करता है। इसके अलावा, वर्डप्रेस खुद को अपडेट करता है या कुछ और? मैंने देखा कि जब मैं लॉगऑन करता हूं तो मेरी वेबसाइट पर एक नया एडमिन टास्क बार होता है, जो मैंने पहले नहीं किया था। मुझे नहीं पता कि यह वहां कैसे पहुंचा।
एडम

किसी ने गलती से 3.1 को अपडेट किया, इसलिए इसने एक प्लगइन के साथ विरोध किया
एडम

1
मिसिंग .htaccessभी इस मुद्दे को जन्म दे सकता है, जो भी आप
पर्मालिंक को

1
बस वर्डप्रेस एडमिन को लॉगिन करें और पर्मालिंक को फिर से सेव करें। यह wil एक .htaccess फ़ाइल जनरेट करता है या मौजूदा एक को अपडेट करता है।
कीयूर पटेल

मैं व्यवस्थापक और मैन्युअल रूप से अद्यतन .htaccess फ़ाइल का उपयोग करने की कोशिश की है, लेकिन अभी भी एक ही मुद्दा है। प्लगिन को अक्षम करें लेकिन पर्मलिंक समस्या को ठीक न करें।
जयमिन

56

मूल रूप से .htaccess फ़ाइल मौजूद होनी चाहिए और httpd.conf सही होनी चाहिए।

मेरे मामले में, मैंने फ़ाइल /etc/apache2/apache2.conf को अनुभाग में बदल दिया है:

<Directory "/var/www/html">

परिवर्तित लाइन है:

AllowOverride None

सेवा

AllowOverride All

और के साथ वेब सर्वर को पुनरारंभ करें

systemctl restart apache2

1
धन्यवाद, इससे मदद मिली। मेरे मामले में AllowOverride सेटिंग गायब थी।
कपड़ा

1
इसने मेरे लिए भी इसे ठीक कर दिया। मैं इसके लायक क्या है इसके लिए वेजिटेशन स्कॉचबॉक्स का उपयोग कर रहा हूं।
मैट केई

2
यह लगभग हमेशा समस्या है। शीर्ष उत्तर होना चाहिए।
नोएल बैरन

इसने मेरे लिए इस मुद्दे को सही कर दिया- स्वीकृत उत्तर होना चाहिए
चार्ल्स

52

कि इस समस्या को ठीक करना बहुत आसान है यदि आप के अलावा अन्य पर्मालिंक्स उपयोग कर रहा था defaultजैसे Day and name, Month and name, Numeric, Post nameया Custom Structure, आप केवल करने की जरूरत है

अपने व्यवस्थापक क्षेत्र में लॉगिन करें: Settings > Permalinksजो होना चाहिए:http://yoursite.com/wp-admin/options-permalink.php

Defaultपर्मलिंक सेटिंग चुनें , फिर परिवर्तन सहेजें

फिर आप इसे फिर से अपने अन्य पिछले पर्मलिंक विकल्प पर वापस कर सकते हैं या इसे defaultइच्छानुसार रख सकते हैं

ध्यान दें कि यह समस्या तब हो सकती है जब आप अपनी साइट को किसी डोमेन या स्थान से दूसरे स्थान पर ले जाते हैं।


1
इससे मुझे कुछ हद तक मदद मिली, मेरे पास कुछ डेटाबेस त्रुटियां थीं और बाद में मेरे सभी पृष्ठ 404 थे। पर्मलिंक विकल्प को किसी अन्य विकल्प (जैसे सादे) पर स्विच करना, फिर डिफ़ॉल्ट विकल्प पर वापस मेरे सभी लिंक को ठीक करना!
पॉल बीजीडी

यह सुनकर खुशी हुई कि :)
usama sulaiman

2
एकदम सही जवाब +100
हस्तियां डिक

जब काम नहीं कर रहा हो, तो डिफ़ॉल्ट डिफ़ॉल्ट सेटिंग पर वापस कैसे लौट सकता हूं mysite.com/wp-admin?
J86

बिल्कुल सही जवाब 10,086
Aflext

29

यदि डिफ़ॉल्ट व्यवहार ( example.com/?p=42) काम कर रहा है, तो आपको चाहिए:

  • अपनी पसंदीदा पर्मलिंक शैली में परिवर्तन करें: Admin: Settings > Permalinksऔर सहेजें पर क्लिक करें। कभी-कभी यह समस्या को ठीक करता है। यदि यह नहीं था:
  • सत्यापित करें कि फ़ाइल /path/to/wordpress/.htaccessबदल दी गई है और अब इसमें रेखा शामिल है RewriteEngine On। यदि इसमें लाइन शामिल नहीं है, तो यह एक Wordpress अनुमतियाँ समस्या है।
  • सत्यापित करें कि 'rewrite' मॉड्यूल लोड है: साथ PHP फ़ाइल बनाएँ

    <?php
      phpinfo()
    ?>

    इसमें, इसे ब्राउज़र में खोलें और खोजें mod_rewrite। यह 'लोडेड मॉड्यूल' सेक्शन में होना चाहिए। यदि यह नहीं है, तो इसे सक्षम करें - index.htmlविवरण के लिए अपनी अपाचे डिफ़ॉल्ट फ़ाइल को देखें - उबंटू में, आप इसे सहायक के साथ करते हैं a2enmod

  • सत्यापित करें कि एपाचे सर्वर .htaccessफाइल को देख रहा है । खुला httpd.conf- या यह उबंटू वैकल्पिक है, /etc/apache2/apache2.conf। इसमें, आपके पास कुछ ऐसा होना चाहिए

    <Directory /path/to/wordpress>
      Options Indexes FollowSymLinks
      AllowOverride All
      Require all granted
    </Directory>
  • इन परिवर्तनों को करने के बाद, अपने अपाचे सर्वर को पुनः आरंभ करना न भूलें। sudo service apache2 restart


20

यदि यह सब काम नहीं करता है, तो आपका .htaccess सही है, और पर्मलिंक्स ट्रिक काम नहीं करता है, हो सकता है कि आपने अपना apache2 रीवाइड मॉड सक्षम न किया हो

मैंने इसे चलाया और मेरी समस्या हल हो गई:

 sudo a2enmod rewrite 

यदि आपने सक्षम किया है तो जाँच करने के लिए पृष्ठ mod_rewriteमें खोजें phpinfo();। यह है Loaded Modulesकीapache2
vanduc1102

9

वर्डप्रेस व्यवस्थापक इंटरफ़ेस के भीतर निम्नलिखित करें:

  1. व्यवस्थापक सेटिंग पर जाएं

  2. Permalink पर क्लिक करें और रेडियो बटन में पोस्ट नाम चुनें।

  3. नीचे स्क्रॉल करें और आपको .htaccessयहां कोड दिखेगा ।

    <IfModule mod_rewrite.c>
        RewriteRule ^index\.php$ - [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /wordpress/index.php [L]
    </IfModule> 
  4. कोड को कॉपी करें और .htaccessफाइल में पेस्ट करें ।

1
मुझे ये कहां मिल सकता है? Permalinks में ऐसा कुछ नहीं है।
बोरिस_यो

@Boris_yo जहाँ तक मुझे पता है, नियम केवल तभी दिखाई देंगे जब आपकी htaccessफ़ाइल notलिखने योग्य होगी .. अगर यह वर्डप्रेस है तो इसे स्वयं लिखेंगे ...
Obmerk Kronen

1
यह जवाब कमाल है! और लिनक्स में WP का उपयोग करने तक इसके बारे में कभी नहीं जान पाएंगे। बहुत बहुत धन्यवाद
Mayeenul इस्लाम

7

Apache httpd.conf डॉक्यूमेंट में रीराइट मॉड के डिसेबल होने के कारण यह एरर आ रही है, बस इसे अनकम्फर्टेबल करें और सीओ फ्रेंडली पर्मलिंक्स का आनंद लें


4
  • जाँच करें कि .htaccess पर निर्देशिका सही है
  • फ़ील्ड की जाँच करें "साइटर्ल" और "होम" सही हैं

1
मेरे लिए, घर की समस्या थी। मैं इसे ठीक कर देता हूं और काम पर वापस आ जाता हूं। ओब्रित्यान्स्की जोस कार्लोस।
टियागो गौवेए

4

हमारे पास एक ही समस्या थी और हमने अपने वर्चुअल होस्ट की त्रुटि.लॉग की जाँच करके इसे हल किया। हमें निम्न संदेश मिला:

AH00670: विकल्प FollowSymLinks और SymLinksIfOwnerMatch दोनों बंद हैं, इसलिए रिवाइटररूल निर्देश भी निर्देशिका प्रतिबंधों को दरकिनार करने की अपनी समान क्षमता के कारण निषिद्ध है: / srv / www / htdocs / wp-intranet /

समाधान सेट करने के लिए Options Allऔर AllowOverride Allहमारे वर्चुअल होस्ट कॉन्फ़िगरेशन में था।


3

यदि आपके पास अपने खाते की एफ़टीपी पहुँच है:

सबसे पहले, अपने wp-admin में लॉगिन करें और Settings> Permalinks पर जाएं

आपको सबसे नीचे कुछ देखना चाहिए जो कहता है:

"यदि आपकी .htaccess फ़ाइल गलत थी, तो हम यह स्वचालित रूप से कर सकते हैं, लेकिन ऐसा नहीं है। ये mod_rewrite नियम हैं जो आपको अपनी .htaccess फ़ाइल में होने चाहिए। फ़ील्ड में क्लिक करें और सभी का चयन करने के लिए CTRL + a दबाएं।"

यदि यह सच है तो निम्न कार्य करें:

  1. अपने एफ़टीपी ग्राहक के लिए वरीयताओं में जाएं और सुनिश्चित करें कि छिपी हुई फ़ाइलें प्रदर्शित होती हैं (आपके एफ़टीपी क्लाइंट के आधार पर भिन्न होती है) - यदि आप ऐसा नहीं करते हैं तो आप अपनी htaccess फ़ाइल को खोजने में सक्षम नहीं होंगे।

  2. उस फ़ोल्डर पर जाएं, जहां आपका wp-admin, wp-content, wp- निर्देशिका शामिल हैं। .Htaccess फ़ाइल की जाँच करें। यदि यह मौजूद है तो स्टेप 4 पर जाएं

  3. यदि यह मौजूद नहीं है, तो अपने .htaccess नामक एफ़टीपी कार्यक्रम में एक नई रिक्त फ़ाइल बनाएँ

  4. अपनी .htaccess फ़ाइल के लिए CHMOD को 666 में बदलें (आप इसे कैसे करना चाहते हैं इस पर आपकी प्राथमिकता)

  5. अपने Permalinks पेज पर वापस जाएं और अपनी इच्छित लिंक संरचना को संपादित करें। समस्या का समाधान होना चाहिए!

  6. आपके द्वारा किए जाने के बाद htaccess फ़ाइल के chmod को 644 में बदलना सुनिश्चित करें।

बस एक ही समस्या थी और यह इसे तुरंत ठीक करने के लिए लग रहा था! सौभाग्य!


"mod_rewrite" यह समस्या थी, मैं इसे सक्षम करना भूल गया! धन्यवाद :)
केमैकलैस

3

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

यदि वर्डप्रेस के पास .htaccessफ़ाइल लिखने की सही अनुमति नहीं है, तो पृष्ठ के शीर्ष पर एक सूचना दिखाई देगी और सेटिंग्स के सहेजे जाने पर नीचे दिए गए निर्देशों को आगे बढ़ाया जाएगा। इस स्थिति में आपको .htaccessउस फ़ाइल की अनुमतियों को ठीक करने के लिए फ़ाइल को स्वयं संपादित करना होगा या बेहतर करना होगा। फ़ाइल वर्डप्रेस इंस्टॉलेशन के मूल में है। cdनिर्देशिका में और sudo chmod 644 .htaccess। आप यह भी जांच सकते हैं कि फ़ाइल सही समूह से संबंधित है या नहीं और जो आवश्यक है उसे बदल दें chown। अपने होस्टिंग प्रदाता से पूछें कि क्या आपको नहीं पता कि यह कैसे करना है।

यदि आप साझा होस्टिंग पर हैं तो शायद आप ही कर सकते हैं। यदि आपके पास अभी भी समस्या है तो आप प्रदाता के समर्थन की मेजबानी करने के लिए आपसे बात करना चाहते हैं। अन्यथा, सुनिश्चित करें कि .htaccessसर्वर पर फ़ाइलों का उपयोग सक्षम है, जैसा कि @georgeos ने पहले ही सुझाया था। ध्यान दें कि httpd.confहमेशा उपयोग नहीं किया जाता है ( उबंटू इंगित करता है कि यह पदावनत है लेकिन आधिकारिक अपाचे डॉक्स अभी भी कहता है कि यह अक्सर मुख्य कॉन्फ़िगरेशन फ़ाइल है )। /etc/httpd/conf/httpd.confऔर /etc/apache2/apache2.confइस फ़ाइल के लिए सबसे आम स्थान हैं। सार्वजनिक फ़ोल्डर के लिए ब्लॉक ढूंढें, आमतौर पर <Directory /var/www/>और सुनिश्चित करें कि AllowOverrideनिर्देश सेट है All। यदि यह सेट है None, तो आपकी .htaccessफ़ाइल को सर्वर द्वारा अनदेखा कर दिया जाता है।



2

आपके पास .htaccess वेबहोस्ट सेटिंग्स में बंद हो सकता है। डिफ़ॉल्ट पर्मलिंक पर सेट करना उस स्थिति में काम करेगा।


1

केस 1: - हमें लगता है कि अगर इस तरह के मुद्दे को देखें तो साइट को एक होस्टिंग से दूसरे होस्टिंग पर माइग्रेट करें।

समाधान: - बस पुराने सर्वर कॉपी .htaccess फ़ाइल कोड पर जाएं, फिर नए सर्वर में अतीत ।htaccess फ़ाइल। 99% यह मैं काम करेगा।


0

मुझे एक ही समस्या है और इसलिए मैं अपाचे को हटा देता हूं और इसे फिर से बनाता हूं और समस्या हल हो गई।


0

बस सेटिंग में नेविगेट करें-> अपने डैशबोर्ड में पर्मलिंक और फिर अंतिम में परिवर्तन बटन सहेजें


0

यदि आपका वर्डप्रेस इंस्टॉलेशन सबफ़ोल्डर में है (उदा। Https://www.example.com/subfolder ) तो अपने वर्डप्रेस में इस लाइन को बदलें.htaccess

RewriteRule . /index.php [L]

सेवा

RewriteRule . /subfolder/index.php [L]

ऐसा करने के लिए, आप सर्वर को index.phpवर्डप्रेस फ़ोल्डर में वर्डप्रेस देखने के लिए कह रहे हैं (उदाहरण। https://www.example.com/subfolder ) बजाय सार्वजनिक फ़ोल्डर में (उदा। Https://www.example.com) । )।


0

मैंने सिर्फ "महीने और day'of को सभी पोस्ट को बदल कर सेटिंग> पेरलिंक में बदल दिया है।"

अब सभी पद खुले हैं और ठीक काम कर रहे हैं।

फिर से, मैंने सभी पदों का नाम बदलकर इसकी वास्तविक अनुमति दे दी। फिर से ठीक काम कर रहा है।

इस विधि ने मेरे लिए काम किया :-)


0

Nginx उपयोगकर्ताओं के लिए

अपनी साइट के लिए अपनी गोपनीय फ़ाइल में निम्नलिखित का उपयोग करें (आमतौर पर /etc/nginx/sites-available/example.com)

location / { try_files $uri $uri/ /index.php?q=$uri&$args; }

यह यूआरआई स्ट्रिंग और आपूर्ति किए गए तर्कों के साथ सभी पर्मलिंक अनुरोधों को अनुक्रमणित करने के लिए करता है। systemctl reload nginxपरिवर्तनों को देखने के लिए एक करें और आपके गैर-मुखपृष्ठ लिंक लोड होने चाहिए।


0

कोई भी पर्मलिंक या सर्वर कॉन्फिगर बदलाव करने की कोशिश करने से पहले, कृपया .htaccess फ़ाइल की जाँच करें। यह ज्यादातर एक भ्रष्ट या रिक्त .htaccess फ़ाइल समस्या है। डिफ़ॉल्ट के लिए htaccess फ़ाइल रीसेट करें

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

0

2 लंबे दिनों के बाद, समाधान options +FollowSymLinksमेरी .htaccessफ़ाइल के शीर्ष पर जोड़ना था ।


-1

मेरे पास यह मुद्दा बहुत पहले नहीं था। मैंने अपनी अनुमति को डिफ़ॉल्ट रूप से रीसेट कर दिया था या इसे सहेज लिया था, अद्यतित थीम / कोर टू (4.7.4) / प्लगइन्स, सभी प्लगइन्स को निष्क्रिय कर दिया था, डिफ़ॉल्ट थीम पर स्विच किया गया था, अनुकूलित डेटाबेस। ।

अब तक कुछ भी काम नहीं करता है, पुराने पृष्ठों के लिए पोस्ट, नया पृष्ठ, / संपर्क पृष्ठ EXCEPT क्या काम करता है।

मूल रूप से, वे पृष्ठ / URL जो काम नहीं कर रहे हैं:

/breeding
/training
/training/*
/breeding/*

अंतिम, मुझे रूट फ़ोल्डर में ये फाइलें मिलीं:

/breeding.php और /training.php

मैंने दोनों फ़ाइलों और उपरोक्त पृष्ठों का नाम बदलकर काम किया।

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