Ik heb een domein draaien op http://www.website.nl
Daarnaast wil ik mijn CMS draaien op https://cms.website.nl
Nu lukt dit prima in plesk door een subdomein aan te maken en het cms te uploaden naar de httpsdocs.
Nu wil ik dus in dat CMS afbeeldingen kunnen uploaden.
Echter deze moeten worden geplaats in http://www.website.nl/img/
Maar je zit dus met de verschillende document_roots van het subdomein en het hoofddomein.
Ik heb dus eerst maar even een proef script gemaakt:
Nu krijg ik echter de volgende foutmelding:
Maar dan krijg ik nog steeds dezelfde foutmelding.
Weet iemand wellicht hoe ik dit op kan lossen, of is het simpelweg onmogelijk om te uploaden vanuit een https-subdomein naar een http-hoofddomein?
Daarnaast wil ik mijn CMS draaien op https://cms.website.nl
Nu lukt dit prima in plesk door een subdomein aan te maken en het cms te uploaden naar de httpsdocs.
Nu wil ik dus in dat CMS afbeeldingen kunnen uploaden.
Echter deze moeten worden geplaats in http://www.website.nl/img/
Maar je zit dus met de verschillende document_roots van het subdomein en het hoofddomein.
Ik heb dus eerst maar even een proef script gemaakt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>test</title> </head> <body> <form action="<?=$_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data" name="uploadform" id="uploadform"> <input type="file" name="file" /> <input type="submit" name="Submit" value="Submit" /> </form> <? if(isset($_POST['Submit'])){ if (is_uploaded_file($_FILES['file']['tmp_name'])) { copy($_FILES['file']['tmp_name'], '/var/www/vhosts/website.nl/httpdocs/img/' . $_FILES['file']['name']); }else{ echo "Mogelijke aanval gespot: " . $_FILES['file']['name']; } } ?> </body> </html> |
Nu krijg ik echter de volgende foutmelding:
Dus ik dacht dat ik met ini_set dan de document_root wel zou kunnen toevoegen (lekker naief) aan het standaard include path metWarning: copy(): open_basedir restriction in effect. File(/var/www/vhosts/website.nl/httpdocs/img/ka.jpg) is not within the allowed path(s): (/var/www/vhosts/website.nl/subdomains/cms/httpsdocs:/tmp) in /var/www/vhosts/website.nl/subdomains/cms/httpsdocs/upload.php on line 16
Warning: copy(/var/www/vhosts/website.nl/httpdocs/img/ka.jpg): failed to open stream: Operation not permitted in /var/www/vhosts/website.nl/subdomains/cms/httpsdocs/upload.php on line 16
PHP:
1
| ini_set('include_path', '/var/www/vhosts/website.nl/httpdocs/img/' . PATH_SEPARATOR . ini_get('include_path')); |
Maar dan krijg ik nog steeds dezelfde foutmelding.
Weet iemand wellicht hoe ik dit op kan lossen, of is het simpelweg onmogelijk om te uploaden vanuit een https-subdomein naar een http-hoofddomein?