mod_rewrite met een domein dat naar een map wijst

Ik ben al een paar dagen op zoek naar het antwoord op deze vraag en kan het blijkbaar niet vinden. Ik heb een website, www.trportfolio.net, en daarop host ik een uploadwebsite www.trportfolio.net/upload/

Ik heb het domein www.truploader.com voor die map gekocht en nu ondervind ik problemen met een mod_rewrite. Ik moet dit herschrijven: www.truploader.com/view_upload.php?id=347343 op www.truploader.com/view/347343/

Houd er rekening mee dat het daadwerkelijke pad voor beide is www.trportfolio.net/upload/view_upload.php?id=347343. Ik geloof dat het vanwege deze curveball is dat ik er zoveel moeite mee heb om het uit te zoeken. Ik weet dat ik een RewriteBase en een RewriteCond of twee nodig heb, maar alle hulp wordt op prijs gesteld. Dank je!

0

1 antwoord

Plaats dit op de juiste plaats in het .htaccess-bestand van uw documentroot:

# won't need to turn on if it's already turned on in your htaccess
RewriteEngine On

RewriteRule ^view/([0-9]+)/?$ /upload/view_upload.php?id=$1  [L]
0
toegevoegd
Dus het bestand view_upload.php staat dan niet in de map/upload /? Zo niet, verwijder dan de /upload van de herschrijfregel.
toegevoegd de auteur Jon Lin, de bron
De 500 kan van een soort herschrijflus zijn. Maar dat snoer zal nooit kloppen omdat URI's in .htaccess de hoofdschuine streep hebben weggehaald. Probeer ^ (. +?)/(. +?)/. Maar dat zou de 500-fout niet moeten veroorzaken, wat waarschijnlijk betekent dat het ergens met een andere regel in strijd is. Houd er rekening mee dat /view/123235/ overeenkomt met die regel en wordt herschreven naar /search_results.php?searchtype=view&query=123235 als dit vóór de regel is voor view_upload.php
toegevoegd de auteur Jon Lin, de bron
Als de eerste sectie bestandsnaam of auteur is, wilt u misschien gewoon een regel voor elke sectie maken: RewriteRule ^ bestandsnaam/([^ /] +) /? search_results.php? searchtype = bestandsnaam & query = $ 1 [L, QSA] en één voor auteur .
toegevoegd de auteur Jon Lin, de bron
Als ik naar www.truploader.com/view/NUMBER ga, krijg ik een 404.
toegevoegd de auteur user1084169, de bron
Het bestand view_upload.php staat in de uploaddirectory, ja.
toegevoegd de auteur user1084169, de bron
Het feitelijk verwijderen/uploaden werkte sowieso! Dank u zeer!
toegevoegd de auteur user1084169, de bron
Eigenlijk heb ik nog een vraag. Ik heb een ander bestand, search_results.php? Searchtype = (bestandsnaam/auteur) & query = QUERY Een voorbeeld kan zijn als: search_results.php? Searchtype = bestandsnaam & query = WeddingPicture Ik moet dat veranderen in www.truploader.com/filename/WeddingPicture/ Uiteraard zullen er twee variabelen zijn, maar deze code die ik net heb geprobeerd gaf mijn hele site een 500-fout. RewriteRule ^/(. +?)/(. +?)//search_results.php?searchtype=$1&query=$2 [QSA]
toegevoegd de auteur user1084169, de bron
Dit is mijn volledige .htaccess en ik krijg nog steeds een 500. RewriteEngine On RewriteRule ^ view/([0-9] +) /? $ /View_upload.php? Id =$1 [L] RewriteRule ^ (. +?)/(. +?)//search_results.php?searchtype=$1&query=$2 [QSA]
toegevoegd de auteur user1084169, de bron
Trouwens, als het het gemakkelijker maakt, kan "zoektype" alleen "bestandsnaam" of "auteur" zijn. Het zoeken wordt gedaan door een formulier op de vorige pagina waar de bezoeker moet kiezen om te zoeken op bestandsnaam of auteur. De volgende code werkt echter niet, ik krijg nog steeds een 500: RewriteEngine On RewriteBase/RewriteRule ^ view/([0-9] +) /? $ /View_upload.php?id=$1 [L] RewriteRule ^ bestandsnaam /(.+?)/ /search_results.php?searchtype=filename&query=$1 [L] RewriteRule ^ author /(.+?)/ /search_results.php?searchtype=author&query=$1 [L]
toegevoegd de auteur user1084169, de bron
Werkte als een charme, dank je!
toegevoegd de auteur user1084169, de bron