-
1. Data: 2015-06-18 14:09:38
Temat: 404 Page Not Found
Od: j...@p...onet.pl
Uczę się tworzyć dynamiczne witryny WWW. Napisałem na pl.comp.www.server-side, ale ta
grupa jest chyba martwa więc piszę tutaj.
Przy próbie otwarcia http://www.xxx.com.pl/index.php/admin/index albo
http://www.xxx.com.pl/index.php/announcement/index mam błąd:
404 Page Not Found
The page you requested was not found.
Oto mój apache2/error.log:
[Thu Jun 18 09:50:13 2015] [error] [client 178.43.26.81] request="GET
/index.php/admin/index HTTP/1.1" pid=139822660326954 uid=3076128 gid=3076128
[Thu Jun 18 09:55:07 2015] [error] [client 178.43.26.81] request="GET
/index.php/announcement/index HTTP/1.1" pid=139822660353178 uid=3076128 gid=3076128
W pliku .htaccess mam (ścieżki są poprawne):
#v+
ErrorDocument 401 "/home/users/xxx/public_html/denial.html"
AuthUserFile "/home/users/xxx/public_html/application/resources/.
htpass"
AuthName "Strony zabezpieczone"
AuthType Basic
require valid-user
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.yyy.com.pl$ [NC,OR]
RewriteCond %{HTTP_HOST} ^yyy.com.pl$ [NC]
RewriteRule ^(.*)$ index.php [L,R=404]
#v-
Domena xxx jest inna niż yyy. Napisałem R=404, ponieważ chcę żeby błąd 404 wyświetlał
się (tylko) dla domeny yyy.
Nie wiem co jest źle i dlaczego ten błąd. Proszę o podpowiedź.
-
2. Data: 2015-06-18 17:31:35
Temat: Re: 404 Page Not Found
Od: Borys Pogoreło <b...@p...edu.leszno>
Dnia Thu, 18 Jun 2015 05:09:38 -0700 (PDT), j...@p...onet.pl
napisał(a):
> RewriteCond %{HTTP_HOST} ^www.yyy.com.pl$ [NC,OR]
> RewriteCond %{HTTP_HOST} ^yyy.com.pl$ [NC]
> RewriteRule ^(.*)$ index.php [L,R=404]
> #v-
> Domena xxx jest inna niż yyy. Napisałem R=404, ponieważ chcę żeby błąd 404
wyświetlał się (tylko) dla domeny yyy.
A zrobiłeś tak, że każdą stronę przekierowałeś z kodem 404.
Od obsługi błędów masz ErrorDocument lub wewnętrzną logikę aplikacji.
--
Borys Pogoreło
borys(#)leszno,edu,pl
-
3. Data: 2015-06-18 17:36:01
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
> A zrobiłeś tak, że każdą stronę przekierowałeś z kodem 404.
Dlaczego każdą? Przecież
RewriteCond %{HTTP_HOST} ^www.yyy.com.pl$ [NC,OR]
RewriteCond %{HTTP_HOST} ^yyy.com.pl$ [NC]
powinno wybierać te z domeny yyy.
-
4. Data: 2015-06-18 19:34:10
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
Chyba powinno być:
#v+
ErrorDocument 401 "/home/users/xxx/public_html/denial.html"
AuthUserFile "/home/users/xxx/public_html/application/resources/.
htpass"
AuthName "Strony zabezpieczone"
AuthType Basic
require valid-user
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.yyy.com.pl [NC,OR]
RewriteCond %{HTTP_HOST} ^yyy.com.pl [NC]
RewriteRule ^(.*)$ - [L,R=404]
#v-
tzn. bez $ po .pl
-
5. Data: 2015-06-18 19:37:16
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
> A zrobiłeś tak, że każdą stronę przekierowałeś z kodem 404.
Chcę te z yyy.
> Od obsługi błędów masz ErrorDocument lub wewnętrzną logikę aplikacji.
Ja nie chcę obsługiwać błędu 404. Ja chcę GENEROWAĆ błąd 404 dla yyy.
-
6. Data: 2015-06-18 19:56:42
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
> > Od obsługi błędów masz ErrorDocument lub wewnętrzną logikę aplikacji.
> Ja nie chcę obsługiwać błędu 404. Ja chcę GENEROWAĆ błąd 404 dla yyy.
Domena yyy jest używana do innych celów i adresy yyy nie powinny być dostępne przez
przeglądarkę.
-
7. Data: 2015-06-18 22:17:39
Temat: Re: 404 Page Not Found
Od: Borys Pogoreło <b...@p...edu.leszno>
Dnia Thu, 18 Jun 2015 10:37:16 -0700 (PDT), j...@p...onet.pl
napisał(a):
>> A zrobiłeś tak, że każdą stronę przekierowałeś z kodem 404.
> Chcę te z yyy.
>
>> Od obsługi błędów masz ErrorDocument lub wewnętrzną logikę aplikacji.
> Ja nie chcę obsługiwać błędu 404. Ja chcę GENEROWAĆ błąd 404 dla yyy.
Ok, to przekierowanie na index.php mnie zmyliło.
Prościej będzie napisać (L jest tu zbędne):
RewriteRule .* - [R=404]
A czemu nie działa? Nie wiem ;) Włącz dla tego vhosta szczegółowy
RewriteLog (dla 2.4 jest inaczej) i zobacz co mu nie pasuje. Masz włączone
AllowOverride dla katalogu tego serwisu?
--
Borys Pogoreło
borys(#)leszno,edu,pl
-
8. Data: 2015-06-19 18:28:20
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
> Włącz dla tego vhosta szczegółowy RewriteLog (dla 2.4 jest inaczej) i zobacz co mu
nie pasuje.
W pliku .htaccess nie da się włączyć RewriteLog'a. Hosting nie umożliwia włączenia
RewriteLog'a. (Testuję aplikację na serwerze hostingowym. Na localhości nie mam tego
błędu 404).
> Masz włączone AllowOverride dla katalogu tego serwisu?
Mogę używać plików .htaccess.
-
9. Data: 2015-06-19 18:29:53
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
Po wykomentowaniu wszystkich poleceń Rewrite nadal błąd 404.
-
10. Data: 2015-06-19 18:42:36
Temat: Re: 404 Page Not Found
Od: j...@p...onet.pl
Problem z błędem 404 pojawił się po tym jak na nowo założyłem katalog public_html i
przeftepowałem całą witrynę z localhosta. Przedtem problemu nie było.
Myślałem, że może jest jakiś problem z uprawnieniami lub prawami dostępu, ale mam
(xxx to domena/konto):
drwxrws--- xxx xxx dla public_html i podkatalogów witryny;
-rw-rw---- xxx xxx dla plików witryny.
więc chyba jest dobrze.
Kod na hostingu jest taki sam jak na localhoście. Jak mówiłem, na localhoście
problemu 404 nie mam.