htaccess Проблема: выдача заголовка 404, хотя страница отображается правильно - PullRequest
0 голосов
/ 21 января 2012

В данный момент я сталкиваюсь с довольно странной проблемой, у меня есть установки WordPress и oscommerce на одном домене. Я поместил WordPress в корень и oscommerce в папке / store /. Все работает правильно, кроме одной вещи. Заголовки сервера oscommerce выдают ошибку 404, хотя страница отображается правильно. Это приводит к тому, что googlebot не будет индексировать эти страницы вообще. Кто-нибудь может помочь мне решить эту проблему? Что мне теперь делать?

Root httaccess is 

RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html

RewriteEngine On
RewriteCond %{HTTP_HOST} ^outdoorwatersolutions.com [NC]
RewriteRule ^(.*)$ http://www.outdoorwatersolutions.com/$1 [L,R=301]


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

и oscommerce httaccess -

Options +SymLinksIfOwnerMatch
<IfModule mod_rewrite.c>
 RewriteEngine On

 # RewriteBase instructions
 # Change RewriteBase dependent on how your shop is accessed as below.
 # http://www.mysite.com = RewriteBase /
 # http://www.mysite.com/catalog/ = RewriteBase /catalog/
 # http://www.mysite.com/catalog/shop/ = RewriteBase /catalog/shop/

 # Change RewriteBase using the instructions above 
 RewriteBase /store/
 RewriteRule ^([a-z0-9/-]+)-p-([0-9]+).html$ product_info.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-c-([0-9_]+).html$ index.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-m-([0-9]+).html$ index.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-pi-([0-9]+).html$ popup_image.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-pr-([0-9]+).html$ product_reviews.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-pri-([0-9]+).html$ product_reviews_info.php [NC,L,QSA]
 # Articles contribution
 RewriteRule ^([a-z0-9/-]+)-t-([0-9_]+).html$ articles.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-au-([0-9]+).html$ articles.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-a-([0-9]+).html$ article_info.php [NC,L,QSA]
 # Information pages
 RewriteRule ^([a-z0-9/-]+)-i-([0-9]+).html$ information.php [NC,L,QSA]
 # Links contribution
 RewriteRule ^([a-z0-9/-]+)-links-([0-9_]+).html$ links.php [NC,L,QSA]
 # Newsdesk contribution
 RewriteRule ^([a-z0-9/-]+)-n-([0-9]+).html$ newsdesk_info.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-nc-([0-9]+).html$ newsdesk_index.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-nri-([0-9]+).html$ newsdesk_reviews_info.php [NC,L,QSA]
 RewriteRule ^([a-z0-9/-]+)-nra-([0-9]+).html$ newsdesk_reviews_article.php [NC,L,QSA]
</IfModule>

Ответы [ 2 ]

0 голосов
/ 03 июля 2014

(я знаю, что это два года спустя ... но, может быть, это сэкономит время для всех)

У меня была точная проблема в интернет-магазине. Только сайты о продуктах, где они показывают, как должны, но давая заголовок http 404 .

Итак, я заглянул в product_info.php и было что-то вроде этого:

if ($product_check['total'] < 1) header('HTTP/1.1 404 Not Found');

Я был как: какого черта! Он был размещен там, чтобы улучшить производительность SEO ...

(Этот дурной совет был дан здесь: http://forums.hostgator.com/oscommerce-enhancement-t27840.html )

Что он действительно может сделать, так это убить ваши SEO-работы ...

(причина того, что продукт распродан, сигнализирует о его исчезновении хотя это может вернуться позже ...)

0 голосов
/ 21 января 2012

Это похоже на неверную конфигурацию oscommerce. У других людей были подобные проблемы. Попробуйте некоторые решения здесь или Google для большего количества примеров.

По какой-то причине ссылка не работает, извините. Вот кэшированная страница, на которую я пытался сослаться http://webcache.googleusercontent.com/search?q=cache:Z2i_KItzGHcJ:www.oscmax.com/forums/oscommerce-2-2-installation-help/3962-getting-404-error-when-trying-view-products.html+&cd=9&hl=en&ct=clnk&gl=us&client=firefox-a

...