Ik probeer het mogelijk te maken dat een website die zich elders bevindt bepaalde gegevens uit mijn database kan ophalen, tot nu toe zonder het gewenste resultaat want de website kan geen verbinding maken ( Can't connect to MySQL server)
Dit is wat ik heb gedaan:
1.
mysql> GRANT SELECT ON mijndatabase.mijntabel TO nieuwegebruiker@’ipadres-van-externe-website’ IDENTIFIED BY ‘wachtwoord’;
2. open port 3306 mysql
sudo iptables -A INPUT -p tcp -s 0/0 --sport 1024:65535 -d ipadresexternewebsite --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp -s ipexterneadreswebsite --sport 3306 -d 0/0 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
config van *.php pagina op de externe website die contact gaat maken met mijn server
Het gaat om de resources die je laadt. Wanneer je over https laadt moeten al je resources ook https zijn. Links zijn geen resource, en het zou natuurlijk idioot zijn om niet naar http te mogen linken.
cURL is niets meer dan een bibliotheek met functies waarvan je de techniek theoretisch ook in browsers vindt. In dit geval gaat het dan puur om de techniek. Zo kan je met cURL bijvoorbeeld cookies plaatsen tijdens een request, controleren of er geen 'redirect infinite loop' is, uit de headers opmaken wat de uiteindelijke locatie van een hostname is of zelfs de header meesturen voor de Auth-realm gegevens van een met een inlog beveiligde pagina.
Deze functie-bibliotheek is ideaal te gebruiken voor het connecten met API's. En dan puur alleen het connecten ermee. Uitlezen doe je voornamelijk met de toegewezen functies voor XML of JSON.
Ik dacht dat alles werkte maar de images laden niet (ondanks dat ik een wachtwoord meegeef in de curlpagina). Lokaal op xampp werkt het wel en zie ik gewoon de de images, maar live dus niet. Als ik de paginabron bekijk kloppen de url's dus daar ligt het niet aan.
De site waaraan ik de images onttrek heeft basic auth. Het rare is: de rest van de pagina laadt wel (de inhoud van txtfiles met fopen op de curlpagina zie je wel, de databaseinhoud ook) alleen de images uit mn loop dus niet. Daarvan zie je alleen de alttekst en dan volgt het inlogscherm van de website (waar de images staan).
Hoe kan dat nou? Waarom moet je inloggen om de fotos te kunnen zien terwijl de rest wel zichtbaar is?
Dit is mijn curlscript: