Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> apache - nie do końca dobre działanie mod_rewrite?
Foxx
post 16.02.2012, 16:12:31
Post #1





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


Mam problem z Apache zainstalowanym na Ubuntu 10.10.
Objawy są następujące:

- nie działają skrypty PHP gdy po nazwie skryptu jest slash, np:
localhost/test.php/
localhost/test.php/costam
Efekt:
Kod
Not Found
The requested URL /test.php/costam was not found on this server.


- działa .htaccess, działa prosta reguła:

Kod
RewriteEngine on
RewriteRule ^alice.html$ bob.html


- działają skrypty gdy url ma postać inną niż wyżej opisana, np:

localhost/test.php
localhost/test.php?cos=wartosc
localhost/test.php?cos=wartosc/costam
localhost/test.php?cos=wartosc/costam/
localhost/test.php?/costam/

- na drugim komputerze mam także Ubuntu i apache/php/mysql działają tam poprawnie. skopiowałem więc php.ini oraz apache2/apache2.conf i apache2/sites-available/default ale to nie rozwiązało problemu

/etc/apache2/apache2.conf:
Kod
LockFile ${APACHE_LOCK_DIR}/accept.lock
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
<IfModule mpm_event_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
AccessFileName .htaccess
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy all
</Files>
DefaultType text/plain
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
Include mods-enabled/*.load
Include mods-enabled/*.conf
Include httpd.conf
Include /etc/phpmyadmin/apache.conf
Include ports.conf
Include conf.d/
Include sites-enabled/


/etc/apache2/httpd.conf - pusty plik

/etc/apache2/sites-available/default:

Kod
<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /home/jakub/www
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /home/jakub/www>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride All
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride All
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>


Będę wdzięczny za sugestie.
Go to the top of the page
+Quote Post
melkorm
post 16.02.2012, 16:19:20
Post #2





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


a może pokażesz sam plik .htaccess ?


--------------------
Go to the top of the page
+Quote Post
Foxx
post 16.02.2012, 16:22:24
Post #3





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


W powyższym poście wkleiłem treść .htaccess na którym przeprowadziłem test i stwierdziłem, że działa.
Mój problem nie dotyczy konkretnego projektu, ale każdego projektu/skryptu, który próbuję uruchomić. Objawy są wszędzie takie same.
Nie pojawiły się też w trakcie użytkowania poprawnie skonfigurowanego systemu - wczoraj zainstalowałem ubuntu + php, mysql, apache i od razu zmagam się z tym problemem.

Go to the top of the page
+Quote Post
erix
post 16.02.2012, 16:39:11
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Adresy plik.php/asd działają raczej tylko wtedy, gdy masz PHP podłączone via (Fast)CGI. Mod_php na coś takiego nie pozwalał bez dodatkowych obejść.

Pobaw się flagą cgi.fix_pathinfo.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Foxx
post 20.02.2012, 14:02:39
Post #5





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


Hej, dzięki za odpowiedź. Wypróbowałem obie możliwe wartości cgi.fix_pathinfo i niestety niczego to nie zmienia.

Przeinstalowałem Apache i ciągle to samo. W defaultowym ustawieniu Apache document root jest ustawiony na /var/www i gdy pozostawiam to ustawienie i testuję skrypty właśnie tam to objawy są takie same. Czy to możliwe, że coś jest nie tak z czymś innym niż konfiguracja Apache? Dlaczego po skopiowaniu poprawnej konfiguracji dla Apache i Php z drugiego komputera objawy kompletnie się nie zmieniły?

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 30.06.2025 - 05:58