Archiwa tagu: htaccess
FAQ: Jak po imporcie z otwartego mini przekierować stare adresy kategorii/podkategorii/wpisów na nowe ?
W przypadku importu danych z otwarty mini mod v2.0 możemy w znaczny sposób przyśpieszyć ponowną indeksację treści tworząc pośrednie przekierowania 301. Należy:
- Zaimportować dane z otwarty.pl mini do SEOKatalogu korzystając z opcji ‚te same ID’ (patrz instrukcja)
- W pliku .htaccess starego katalogu dodać 3 linie o postaci:
RewriteRule ^([-_!~*'()$a-zA-Z0-9]+)-k([0-9]+)\.html$ http://nowa-domena.pl/?action=cat&id=$2 [R=301,L] RewriteRule ^([-_!~*'()$a-zA-Z0-9]+)-p([0-9]+)(-([0-9]+))*\.html$ http://nowa-domena.pl/?action=sub&id=$2 [R=301,L] RewriteRule ^([-_!~*'()$a-zA-Z0-9]+)-s([0-9]+)\.html$ http://nowa-domena.pl/?action=site&id=$2 [R=301,L]
Pomimo tego iż system przekieruje na nową domenę z adresami zwykłymi pośredniczące przekierowanie po stronie SEOKatalogu zmieni adresy na wybrane przez Ciebie w konfiguracji SEO-URLe.
FAQ: Jak zablokować konkretnym robotom dostęp do katalogu ?
Katalog stron ze względu na dużą ilość podstron i dosyć sporą ilość połączeń z bazą danych jest szczególnie narażony na bezmyślne ataki spam-robotów. Często takie akcje kończą się blokadą serwera za zbyt duże przekroczenie obciążenia CPU. Aby uchronić nasz katalog przed takimi sytuacjami możemy:
- włączyć Cache stron w PA -> Konfiguracja -> Cache
- zablokować niechciane roboty po ich nazwie i IP w pliku .htaccess
Aby to zrobić wystarczy w pliku .htaccess dodać kod:
SetEnvIfNoCase User-Agent .*Twiceler.* bad_bot SetEnvIfNoCase User-Agent .*VoilaBot BETA 1.2.* bad_bot SetEnvIfNoCase User-Agent .*libwww-perl/5.805.* bad_bot SetEnvIfNoCase User-Agent .*Java/1.5.0_11.* bad_bot SetEnvIfNoCase User-Agent .*Sogou web spider/3.0.* bad_bot SetEnvIfNoCase User-Agent .*psbot.* bad_bot SetEnvIfNoCase User-Agent .*Exabot.* bad_bot SetEnvIfNoCase User-Agent .*Charlotte/1.0b.* bad_bot SetEnvIfNoCase User-Agent .*boitho.com-dc.* bad_bot SetEnvIfNoCase User-Agent .*ajSitemap.* bad_bot SetEnvIfNoCase User-Agent .*bot/1.0.* bad_bot SetEnvIfNoCase User-Agent .*panscient.com.* bad_bot SetEnvIfNoCase User-Agent .*Java/1.6.0_11.* bad_bot SetEnvIfNoCase User-Agent .*WebDataCentreBot/1.0.* bad_bot SetEnvIfNoCase User-Agent .*Java.* bad_bot SetEnvIfNoCase User-Agent .*SapphireWebCrawler.* bad_bot SetEnvIfNoCase User-Agent .*Yandex.* bad_bot SetEnvIfNoCase User-Agent .*Baiduspider.* bad_bot SetEnvIfNoCase User-Agent .*Rankivabot.* bad_bot SetEnvIfNoCase User-Agent .*DBLBot/1.0.* bad_bot order allow,deny deny from env=bad_bot allow from all order allow,deny deny from 196.207.208.8 deny from 41.214.120.182 deny from 41.214.112.207 allow from all
Instrukcja:
Roboty po IP (znamy je np. ze statystyk) blokujemy w sekcji:
order allow,deny deny from 196.207.208.8 deny from 41.214.120.182 deny from 41.214.112.207 allow from all
Roboty po nazwie blokujemy w sekcji SetEnvIfNoCase User-Agent np:
SetEnvIfNoCase User-Agent .*DTS Agent.* bad_bot
FAQ: Pojawia mi się błąd htmlspecialchars_decode() expects parameter 1 to be string, array given in…
Błąd pojawia się po akceptacji formularza dodawania strony i powodem jest włączona funkcja register_globals. Proszę ją wyłączyć dodając do pliku .htaccess linię:
php_flag register_globals off
lub polecenie do pliku php.ini:
register_globals = off
FAQ: Jak dodać nową podstronę informacyjną np. z ofertą reklamową ?
Przede wszystkim nalezy stworzyć plik nowej podstrony w katalogu templates/nazwa-templatki/ najlepiej na bazie tego co jest w pliku rules.php lub info.php. Gotowy plik z treścią zapisujemy pod swoją nazwą np. reklama.php.
Następnie tworzymy SEO-URL dla naszej podstrony w pliku .htaccess dodając linię:
RewriteRule ^twoja-seo-nazwa/ index.php?action=nazwa-pliku [L]
Na koniec pozostaje dodać link do nowej podstrony gdzieś w naszej templatce – wystarczy dodać:
<a href="http://<?=url('nazwa-pliku', 'twoja-seo-nazwa', '');?>">nazwa-podstrony</a>
FAQ: Strona działa prawidłowo ale nie działają SEO-URLe (przyjazne adresy)…
Proszę dodać do pliku .htaccess po RewriteEngine On dodatkową linię:
RewriteBase /
FAQ: Strona działa prawidłowo ale rozsypuje się formularz dodawania nowej strony…
Najczęstszym powodem jest włączona funkcja register_globals. Proszę ją wyłączyć dodając do pliku .htaccess linię:
php_flag register_globals off
lub polecenie do pliku php.ini:
register_globals = off
FAQ: Gdy wchodzę na stronę wyświetla się błąd przekierowania/500 Internal Server Error – jak to naprawić ?
Proszę usunąć z pliku .htaccess w głównym katalogu ze skryptem poniższe linie:
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [L,R=301]
Uwaga: problem powinien dotyczyć już tylko wersji < 1.4