حل مشکل مسیردهی نسبی در حالت SEF
حل مشکلات مسیردهی نسبی بعد از فعال کردن سیستم بهینه سازی آدرسها برای موتورهای جستجو (SEF)
احتمالا بسیاری از کاربران، بعد از فعال کردن سیستم SEF در مامبو 4.6.5 به مشکلاتی در آدرس دهیهای نسبی برخوردهاند.
از این جمله میتوان به بروز مشکلات مختلف در صفحاتی به جز ریشه سایت اشاره کرد : مشکلاتی در نمایش تصاویر، غیرفعال شدن برخی ماژولها، ناپدید شدن میلهها در نظرسنجی، و بطور کلی بروز مشکلاتی در صفحاتی به جز صفحه اول سایت، زمانی که مسیردهی بصورت نسبی (relative) تعریف شده باشد.
بطور مثال، فایل CSS سیستم نظر سنجی، بصورت نسبی آدرس دهی میشود :
<source lang="php">
components/com_poll/poll_bars.css
</source>
که در برخی مرورگرها، این آدرس به انتهای آدرس صفحه جاری اضافه میشود :
<source lang="php">
http://www.site.com/component/option,com_poll/task,results/id,2//components/com_poll/poll_bars.css
</source>
راه حل رفع مشکل
این فایل را با یک ویرایشگر استاندارد باز کنید : Mambo_Path/includes/core.classes.php
دو خط متوالی 2719 و 2720 را پیدا کنید :
<source lang="php">
$baseHref = sefRelToAbs('index.php?'.mosGetParam ($_SERVER,"QUERY_STRING","")); $head['base'] = "<base href=\"{$baseHref}/\" />";
</source>
و این دو خط را به جای آنها وارد کنید:
<source lang="php">
$config =& mamboCore::getMamboCore(); $head['base'] = "<base href=\"{$config->mosConfig_live_site}/\" />";
</source>
و فایل را ذخیره کنید.
تیم مامبولرن مسئولیتی در قبال مشکلات ناشی از اعمال نادرست این کدها نخواهد داشت.
سعید ۲۹ اوت ۲۰۰۹، ساعت ۰۱:۳۴ (UTC)
آدرس بحث در انجمن جوملا فارسی : حل مشکلات مامبو 4.6.5 - Mambo 4.6.5 Bug Fixes
![]() |