Temat poruszany setki razy, ale nigdzie nie znalazłem rozwiązania mojego problemu.
Na początek może prosiłbym o to, żeby się ktoś podzielił ze mną swoją wiedzą, jak od początku do końca ma wyglądać plik .htaccess, w którym chcę zrobić tylko jedną jedyną rzecz - ustawić inną stronę startową niż index.html lub index.php?
Mój problem polega na tym, że gdy umieszczę plik .htaccess w katalogu, gdzie mam swoją stronę www, to wszystko przestaje działać:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, root@xxxx and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
error_log pokazuje coś takiego:
[Fri May 11 0808 2012] [alert] [client XXX.XXX.XXX.XXX] /var/www/htdocs/nazwa_strony/.htaccess: DirectoryIndex not allowed here
(oczywiście zamiast XXX.XXX.XXX.XXX] jest mój adres IP).
Na forach znalazłem różne podpowiedzi, że mam w sekcji <Directory> wstawić linię AllowOverride All, czy też AllowOverride Indexes, ale mam wrażenie, że popełniam błąd gdzieś na początku, bo nie wiem, jak ma wyglądać struktura całego tego pliku .htaccess. Dotychczas używałem go do RewriteRule i działało fajnie. Dodam, że strona stoi na linuxie Slackware, a w pliku /etc/apache/httpd.conf są m.in. takie wpisy:
(...)
LoadModule dir_module libexec/apache/mod_dir.so
(...)
AddModule mod_dir.c
(...)
<Directory />
Options FollowSymLinks
AllowOverride FileInfo
</Directory>
(...)
<IfModule mod_dir.c>
DirectoryIndex index.html index.php
</IfModule>
(...)
AccessFileName .htaccess
(...)
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
(...)
Od razu powiem, że nie mogę zmienić linii "DirectoryIndex index.html index.php" na "DirectoryIndex start.html", bo na tym serwerze działa kilka stron i tylko w jednej chcę zmienić stronę startową.
Strona postawiona jest w katalogu /home/nazwa_uzytkowski/nazwa_strony
Natomiast jego podlinkowanie (jak widać w error_log-u) jest do katalogu /var/www/htdocs/nazwa_strony/
Jak w takim wypadku od początku do końca ma wyglądać plik .htaccess?
Ja napisałem go tak, jak poniżej i nie działa:
DirectoryIndex start.html
<Directory "/var/www/htdocs/nazwa_strony/">
AllowOverride All
</Directory>
Z góry dzięki za pomoc!