के बिना काम नहीं करते हैं मेरा Magento उबंटू लिनक्स/var/www/Magento के तहत स्थापित है। यह प्रश्न संग्रह में कुछ प्रश्नों की तरह दिखता है लेकिन यह कुछ हद तक अलग है। जब मैंने पर Magento स्थापित किया, उबंटू लिनक्स मैंने अपाचे mod_rewrite URL को फिर से लिखने में सक्षम किया।होम पेज के अलावा Magento यूआरएल index.php
जब मैं http: // localhost/magento पर जाता हूं तो मेरा सर्वर URL को http: // localhost/magento/ के रूप में पुनः लिखता है और पृष्ठ प्रदर्शित करता है। मैं नेविगेशन बार में लिंक में से किसी एक पर क्लिक करता हूं, मान लीजिए कि यह एनएवी-बार आइटम "foo" है।
: http: फिर Magento के लिए मुझे ले जाता है // स्थानीय होस्ट/Magento/foo.html
जो एक "नहीं मिला" अपाचे पेज प्रदर्शित करता है।
मैं यूआरएल ----- करने के लिए>
http बदलना होगा: // स्थानीय होस्ट/Magento/index.php/foo.html
आदेश पृष्ठ प्रदर्शित करने के लिए।
ऐसा लगता है कि मेरे mod_rewrite कार्यप्रणाली में कुछ ख़राब है।
धन्यवाद,
जॉन गोचे
विन्यास: सिस्टम -> विन्यास -> (सामान्य ->) वेब:
उपयोग वेब सर्वर पुनर्लेखन: हाँ
आधार URL: http: // localhost/magento
यदि मैं "उपयोगकर्ता वेब सर्वर रिवाइट्स:" सेट करता हूं, तो मेरे मुख्य पृष्ठ से लिंक ठीक काम करता है, लेकिन पृष्ठ http: // localhost/magento/index.php/foo.html देखें जो सही पृष्ठ प्रदर्शित करता है, लेकिन जबकि वेबसाइट काम करता है मुझे URL पसंद नहीं है। I यह index.php बिट के बिना http: // localhost/magento/foo.html होना चाहेगा, क्योंकि यह शायद अधिक एसईओ-अनुकूल होगा।
धन्यवाद,
जॉन गोचे
अद्यतन: मैं अपने कृत्रिम 127.0.1.1 आईपी पते जो ubuntu/etc/hosts में रखा था uncommenting और वहाँ मेरा असली आईपी रखने की कोशिश की है लेकिन कोई भाग्य नहीं। मुझे अभी भी वही समस्या है। और यूआरएल के अंदर यूआरएल http: // localhost/etc पर लिखा गया है ... जब भी मैं टाइप 1 9 2.168.3.31, हिमस्खलन, या avalanche.com इसके अंदर। मैं अभी भी ऊपर वर्णित समस्या को हल करने का तरीका जानने का प्रयास कर रहा हूं क्योंकि ऐसा नहीं हुआ है।
127.0.0.1 localhost
#127.0.1.1 avalanche
192.168.4.35 avalanche avalanche.com
जब मैं अपाचे पुनः आरंभ मैं:
# service apache2 restart
* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.4.35 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.4.35 for ServerName
सुनिश्चित नहीं हैं कि मूल मुद्दे को ठीक करने के लिए। मैं स्थानीय सर्वर पर परीक्षण कर रहा हूं।
मैंने इस समाधान का भी प्रयास किया है और फिर apache2 को पुनरारंभ किया है, लेकिन कोई भाग्य नहीं!
How to remove index.php from URLs?
इसलिए रखकर:
RewriteEngine On
RewriteBase /mymagento/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
काम नहीं करता है, यहां तक कि साथ RewriteBase /, यह काम नहीं करता।
ठीक है, आखिर में मैंने probkem को हल करने में कामयाब रहे। फ़ाइल/etc/apache2/साइटों सक्षम/000-डिफ़ॉल्ट निम्नलिखित निर्देश सभी निर्देशिकाओं इस फ़ाइल में परिभाषित के लिए निर्धारित किया है:,
AllowOverride None
उदाहरण के लिए/var/www जो डिफ़ॉल्ट दस्तावेज़ है के लिए जड़ Ubuntu 12.04 LTS Linux सिस्टम पर इस फाइल सेट
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
जो जहाँ तक मैं समझता हूँ कि इसका मतलब है कि .htaccess फ़ाइलों में इस निर्देशिका और उसकी उप के सभी पार्स नहीं किया जाएगा पाया शामिल हैं। समस्या को ठीक करने के लिए यह निर्धारित करने के लिए पर्याप्त है:
AllowOverride All
जिसका अर्थ है आप सर्वर विन्यास निर्देशों /etc/apache2/apache2.conf में पाया ओवरराइड करने के लिए सक्षम हो जाएगा (या /etc/apache2/httpd.conf जो उसमें शामिल है)।
डिफ़ॉल्ट कारणों से AllowOverride को किसी भी पर सेट नहीं किया गया है, तो यह सर्वर को धीमा कर सकता है और दूसरा सुरक्षा कारणों से है। यह निर्देश टैग के अंदर सेट किया जाना चाहिए और बाद वाले लोग पूर्व को ओवरराइड कर सकते हैं। एक और कारण यह डिफ़ॉल्ट रूप से सेट नहीं है, यह साइट पर पूरे समय साइट पर को पार्स करने के लिए है। लोड होने से सिस्टम धीमा हो सकता है और इस प्रकार रखता है। Htaccess सामान/etc/apache2 में /httpd.conf जब संभव है तो यह अनुशंसित है क्योंकि यह गति में वृद्धि कर सकता है।
तो जगह
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
#AllowOverride None
AllowOverride All
Order allow,deny
allow from all
</Directory>
अंदर/etc/apache2/साइटों सक्षम/000-डिफ़ॉल्ट
और चलाएँ: सेवा apache2 पुनः आरंभ
समाधान है।
मुझे लगता है मैं मिल सकता है समाधान के सभी की कोशिश की है और वे बिल्कुल कोई फर्क, भले ही मैं व्यवस्थापक पैनल में mod_rewrite सक्षम, कैश मिटाएं अपाचे पुनरारंभ करें, और कोड जगह /var/www/mymagento/.htaccess में (और http: // myip/mymagento/admin पर जाएं जो फ़ाइल नहीं मिला है जबकि http: // myip/mymagento/index.php/admin works)। – user1527429
यदि आप समस्या को हल करने में कामयाब रहे हैं, तो कृपया इसे अपने प्रश्न में शामिल न करें। इसके बजाय इसे एक अलग उत्तर बनाओ। आपको ऐसा करने की अनुमति है और प्रोत्साहित किया जाता है। – Bart