PDA

Zobacz pełną wersję : htaccess na ovh.pl(przekierowanie domeny do podkatalogu+przyjazne adresy URL)PROBLEM!



MS_MadMan
10-03-2007, 20:42
Mam mały problem z przekierowaniem domeny do podkatalogu(gdzie znjduje się Joomla)
Sytuacja ma sie nastepująco:
- domena jest podpięta do katalogu /www
- w katalogu /www są dwa podkatalogi: /forum i /serwis(tu jest zainstalowana Joomla)
- do katalogu/www/forum podpięta jest subdomena "forum.mojadomena.pl" więc nie ma problemu

Pierwotnie rozwiązałem problem następującao:
plik .htaccess w katalogu /www:


RewriteEngine On
RewriteRule index.php serwis/index.php


plik .htaccess w podkatalogu /serwis:


RewriteEngine Off


z moją znajomością tematyki związanej z htaccess to było jedyne rozwiązanie...

Chciałbym jednak skozystać z pliku .htaccess dołączonego do Joomla 1.0.11


##
# @version $Id: htaccess.txt 4756 2006-08-25 16:07:11Z stingrey $
# @package Joomla
# @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


################################################## ###
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options FollowSymLinks' may cause problems
# with some server configurations. It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file. If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's. If they work,
# it has been set by your server administrator and you do not need it set here.
#
# Only use one of the two SEF sections that follow. Lines that can be uncommented
# (and thus used) have only one #. Lines with two #'s should not be uncommented
# In the section that you don't use, all lines should start with #
#
# For Standard SEF, use the standard SEF section. You can comment out
# all of the RewriteCond lines and reduce your server's load if you
# don't have directories in your root named 'component' or 'content'
#
# If you are using a 3rd Party SEF or the Core SEF solution
# uncomment all of the lines in the '3rd Party or Core SEF' section
#
################################################## ###

##### SOLVING PROBLEMS WITH COMPONENT URL's that don't work #####
# SPECIAL NOTE FOR SMF USERS WHEN SMF IS INTEGRATED AND BRIDGED
# OR ANY SITUATION WHERE A COMPONENT's URL's AREN't WORKING
#
# In both the 'Standard SEF', and '3rd Party or Core SEF' sections the line:
# RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
# May need to be uncommented. If you are running your Joomla/Mambo from
# a subdirectory the name of the subdirectory will need to be inserted into this
# line. For example, if your Joomla/Mambo is in a subdirectory called '/test/',
# change this:
# RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
# to this:
# RewriteCond %{REQUEST_URI} ^(/test/component/option,com) [NC,OR] ##optional - see notes##
#
################################################## ###


## Can be commented out if causes errors, see notes above.
Options FollowSymLinks

#
# mod_rewrite in use

RewriteEngine On


# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla/MamboDirectory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
############# Use this section if using ONLY Joomla! core SEF
## ALL (RewriteCond) lines in this section are only required if you actually
## have directories named 'content' or 'component' on your server
## If you do not have directories with these names, comment them out.
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteRule ^(content/|component/) index.php
#
########## End - Joomla! core SEF Section



########## Begin - 3rd Party SEF Section
############# Use this section if you are using a 3rd party (Non Joomla! core) SEF extension - e.g. OpenSEF, 404_SEF, 404SEFx, SEF Advance, etc
#
#RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
#RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule (.*) index.php
#
########## End - 3rd Party SEF Section



########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits


aby użyć opcji przyjaznych adresów URL... i tu zaczynają sie schody
Próbowałem kilku rzeczy:
1. (chciałem sie przkonac czy plik nie bedzie wywoływał błędów przy normalnej instalacji)
- Joomla zainstalowana bezposrednio w katalogu /www
- ustawiony standartowy plik .htaccess z Jooml'i
wynik:


Forbidden
You don't have permission to access /index.php on this server.


2.
- Joomla zainstalowana w podkatalogu /serwis
- plik .htaccess w katalogu /www:


RewriteEngine On
RewriteRule index.php serwis/index.php

- standartowy plik .htaccess z Jooml'i w katalogu /serwis
wynik:


Forbidden
You don't have permission to access /home..../mojadomena/www/serwis/index.php on this server.


3.
- Joomla zainstalowana w podkatalogu /serwis
- standartowy plik .htaccess z Jooml'i w katalogu /www ze zmianą fragmentu:


# RewriteBase /

na:


RewriteBase /serwis


wynik:


Forbidden
You don't have permission to access /index.php on this server.


Skończyły mi sie juz pomysły więc porosiłbym o pomoc w rozwiązaniu problemu...
Bede bardzo wdzięczny..

MS_MadMan
12-03-2007, 20:46
...odświeżam temacik bo nikt nic nie napisał...
Czy naprawde nie da sie rozwiązać tego problemu??

yanek
12-03-2007, 22:58
DirectoryIndex index.php
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR]
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php

MS_MadMan
12-03-2007, 23:03
To ma być zawartość .htaccess'a w podkatalogu /serwis??

Jeśli tak to co ma zawierać .htaccess w katalogu /www?

MS_MadMan
13-03-2007, 12:25
Problem rozwiązany (przynajmniej poczęści) pisze więc co i jak zrobiłem może sie komuś przyda:

.htaccess w katalogu głównym /www wygląda tak:


DirectoryIndex index.php
RewriteEngine On
RewriteRule index.php serwis/index.php


...a .htaccess w podkatalogu /serwis to standartowy htaccess Joomli ze zmianami:


Options FollowSymLinks

na:


# Options FollowSymLinks

(to przez to miałem problemy)
oraz


# RewriteBase /

na:


RewriteBase /


Po wpisaniu domeny adres wygląda następująco -www.mojadomena.pl lub mojadomena.pl
Po ustawieniu Translacji URL w PA na TAK linki są w postaci -http://mojadomena.pl/serwis/.../..../itp/




No ale mam kolejny problem właśnie z częścią /serwis w linkach czy nie da się jakoś zmodyfikować jeszcze .htaccess'a żeby tej części nie wyświetlało???? Zależy mi na tym aby linki nie ujawniały tego że Joomla jest zainstalowana w podkatalogu