Ik gebruik hier een php script waar een bestand bij wordt meegeleverd die volgens de makers ge"CHMOD" zou moeten worden. E.e.a. zou onder windows moeten werken. Wie weet of chmod uberhaupt mogelijk is onder windows en hoe kan ik deze stat.txt de chmod waarde 777 meegeven (onder windows)?
CHMOD is dat niet iets wat je op een FTP server doet?
En waar gaat het precies om, wat voor php iets?
9/10x moet je het uploaden naar een server, en dààr pas CHMODden...
En waar gaat het precies om, wat voor php iets?
9/10x moet je het uploaden naar een server, en dààr pas CHMODden...
chmod voor windows? Enige vergelijkbare lijkt me xcacls.
4800Wp zonnestroom met Enphase
Life's a waste of time. Time's a waste of life. Get wasted all the time and you'll have the time of your life.
chmod is *nix.Verwijderd schreef op donderdag 25 november 2004 @ 20:25:
Wie weet of chmod uberhaupt mogelijk is onder windows en hoe kan ik deze stat.txt de chmod waarde 777 meegeven (onder windows)?
Windows heeft file permissions (als je tenminste met NTFS werkt zoals het hoort) waar je minstens zoveel meer mee kan doen.
ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device
777 betekend schrijf, lees en uitvoer-rechten.. Volgens mij heeft PHP dat wel in Windows, dus 't zou zo geen probleem moeten opleveren denk ik.
Het gaat om een search script. Deze wil ik testen op mijn website die ik lokaal (XP) draai onder apache/php. Echter zodra ik de admin panel van de search opstart krijg ik de melding dat stat.txt geCHMOD moet worden. In de readme wordt uitgelegd dat dit kan met Cuteftp. Ik heb hier cuteftp geinstalleerd maar heb de hele CHMOD functie niet kunnen vinden.proller schreef op donderdag 25 november 2004 @ 20:26:
CHMOD is dat niet iets wat je op een FTP server doet?
En waar gaat het precies om, wat voor php iets?
9/10x moet je het uploaden naar een server, en dààr pas CHMODden...
Ik krijg dus zodra ik het script run de melding dat stat.txt geCHMOD moet worden (lees: hij heeft nog niet de juiste waarde). Deze stat.txt moet dus op een of andere manier een bepaalde waarde krijgen. Mar welke waarde en hoe dat is de vraag.Osiris schreef op donderdag 25 november 2004 @ 20:28:
777 betekend schrijf, lees en uitvoer-rechten.. Volgens mij heeft PHP dat wel in Windows, dus 't zou zo geen probleem moeten opleveren denk ik.
Waarde 777 zeg je zelf 
Je kunt een chmod.php in die dir aanmaken met daarin:
En die dan laten uitvoeren. Dan laat je PHP simpelweg alles regelen
Je kunt een chmod.php in die dir aanmaken met daarin:
PHP:
1
| chmod('stat.txt', 0777); |
En die dan laten uitvoeren. Dan laat je PHP simpelweg alles regelen
chmod is een *NIX term om de permissies van een bestand te wijzigen. Dat je dit soms via een FTP server kan doen is in dit geval niet zo interessant; en zal je probleem ook niet oplossenVerwijderd schreef op donderdag 25 november 2004 @ 20:38:
[...]
Ik krijg dus zodra ik het script run de melding dat stat.txt geCHMOD moet worden (lees: hij heeft nog niet de juiste waarde). Deze stat.txt moet dus op een of andere manier een bepaalde waarde krijgen. Mar welke waarde en hoe dat is de vraag.
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
De command line utility 'cacls' kan je uitstekend in scripts verwerken
Dit lijkt me een nuttig antwoord. Ik zal het eens uitproberen.Osiris schreef op donderdag 25 november 2004 @ 20:45:
Waarde 777 zeg je zelf
Je kunt een chmod.php in die dir aanmaken met daarin:
PHP:
1 chmod('stat.txt', 0777);
En die dan laten uitvoeren. Dan laat je PHP simpelweg alles regelen
Let wel even op de vele usercomments bij chmod() in de PHP manual, er zitten wat haken en ogen aan bij gebruik op het windows platform
Het werkt dus blijbaar niet.G33rt schreef op donderdag 25 november 2004 @ 22:22:
Let wel even op de vele usercomments bij chmod() in de PHP manual, er zitten wat haken en ogen aan bij gebruik op het windows platform
Ik heb het volgende script gerund:
<?
chmod('site.dat', 0777);
?>
En hij blijft aangeven dat het bestand site.dat geCHMOD moet worden.
Ik zal eens in een PHP manual kijken.
Lees nou eens goed wat er in dit topic allemaal gezegd wordt aan nuttige informatie. Het komt een beetje op mij over alsof je wil dat iemand je probleem oplost; in plaats van dat je begrijpt wat er fout gaat. Probeer eens te begrijpen wat chmod eigenlijk doet (al meerdere malen uitgelegd in dit topic) en ga dan dit probleem nog eens bekijken. De PHP manual is iets waar je volgens mij mee zou beginnen als je een onbekend commando of foutmelding tegenkomt?Verwijderd schreef op vrijdag 26 november 2004 @ 15:59:
[...]
Het werkt dus blijbaar niet.
Ik heb het volgende script gerund:
<?
chmod('site.dat', 0777);
?>
En hij blijft aangeven dat het bestand site.dat geCHMOD moet worden.
Ik zal eens in een PHP manual kijken.
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
about chmod,Spider.007 schreef op vrijdag 26 november 2004 @ 16:04:
[...]
Lees nou eens goed wat er in dit topic allemaal gezegd wordt aan nuttige informatie. Het komt een beetje op mij over alsof je wil dat iemand je probleem oplost; in plaats van dat je begrijpt wat er fout gaat. Probeer eens te begrijpen wat chmod eigenlijk doet (al meerdere malen uitgelegd in dit topic) en ga dan dit probleem nog eens bekijken. De PHP manual is iets waar je volgens mij mee zou beginnen als je een onbekend commando of foutmelding tegenkomt?
Problably you have a local server to simulate your scripts before upload them to the server. No matter if you use Apache under windows or IIS , a chmod instruction like chmod($filename,O777) may not work because windows does not handle that kind of permission's format.
So being in your local server, if you have a only read file and you try to erase, it will show that you dont have permissions even when you have already executed your chmod instrucction correctly. Just up the script it must work well in your internet server if it is a linux machine
[ Voor 22% gewijzigd door Verwijderd op 26-11-2004 17:06 ]
Inderdaad; en vandaar ook mijn tip om gewoon de permissies aan te passen en vervolgens het script aan te passen. Ook vroeg ik al eerder om welke permissies het ging; dit is echter nog steeds niet duidelijk. Om welk script gaat het? Vraagt het script om world-write, of executable rechten?Verder begrijp ik dat een chmod (of iets vergelijkbaars) onder windows (ik draai XP met FAT32, apache, php) niet mogelijk is, althans zover ik de raadgeving op internet mag geloven. Gewoon het script uppen naar een linux server en dan zal het wel gaan werken. Zie hieronder ook de verklaring.
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
In de readme wordt aangegeven dat de rechten '777' nodig zijn. Als ik het script run, krijg ik deze melding:Spider.007 schreef op vrijdag 26 november 2004 @ 16:55:
[...]
Inderdaad; en vandaar ook mijn tip om gewoon de permissies aan te passen en vervolgens het script aan te passen. Ook vroeg ik al eerder om welke permissies het ging; dit is echter nog steeds niet duidelijk.
code:
1
| Database State = Not Writable, CHMOD "site.dat"! |
De file site.dat staat in XP niet op read-only.
Als ik het script test krijg ik de meldingen in totaal:
code:
1
2
3
4
5
6
7
8
9
10
| # Warning: filesize() [function.filesize]: stat failed for /localhost/ORv1.0/search/site.dat in C:\xampplite\htdocs\ORv1.0\search\admin.php on line 410
Warning: fread(): supplied argument is not a valid stream resource in C:\xampplite\htdocs\ORv1.0\search\admin.php on line 410
Stats/Test Database
# Database State = Not Writable, CHMOD "site.dat"!
# Database Size =
Warning: filesize() [function.filesize]: stat failed for /localhost/ORv1.0/search/site.dat in C:\xampplite\htdocs\ORv1.0\search\admin.php on line 429
Bytes
# Website Count = 1 |
Het gaat om CJ Website Search V1.0Om welk script gaat het?
http://www.scriptsearch.com/cgi-bin/jump.cgi?ID=7877
Dit durf ik niet te zeggen, ik kan het nergens uit opmaken.Vraagt het script om world-write, of executable rechten?
Dit lees ik wel in het script, hierop wordt gecheckt:
PHP:
1
| if(is_writable($filename) |
else laat ie een tekst zien dat er gechmod moet worden, deze tekst lees ik dus
[ Voor 9% gewijzigd door Spider.007 op 26-11-2004 20:02 . Reden: Even juiste RML tags ingeplempt :) ]
Kijk; met deze informatie kunnen we watVerwijderd schreef op vrijdag 26 november 2004 @ 17:25:
[...]
Dit durf ik niet te zeggen, ik kan het nergens uit opmaken.
Dit lees ik wel in het script, hierop wordt gecheckt:
PHP:
1 if(is_writable($filename)
else laat ie een tekst zien dat er gechmod moet worden, deze tekst lees ik dus
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
Uhm, ben ik de enige die erover valt dat fat32 geen permissies op bestandniveau ondersteunt en dat cacls NTFS nodig heeft?
Ik zou die hele is_writable d'r uit slopen:
Ik zou die hele is_writable d'r uit slopen:
Expected result:
----------------
Read only
Actual result:
--------------
Writable
Journalism is printing what someone else does not want printed; everything else is public relations.
Not writeable? Met die output in Bas123's laatste post vraag ik me af of het script er niet eerder al over valt dat het niet READABLE is. Oftewel: permissies KAN het probleem zijn. Maar kijk bijvoorbeeld ook effe of dat bestand wel staat waar het script het aan het zoeken is..
[ Voor 4% gewijzigd door Gwaihir op 26-11-2004 20:25 ]
Hmm.. je hebt inderdaad een goed punt; het valt mij nu pas op dat de TS inderdaad FAT32 gebruikt waar idd alles standaard voor iedereen leesbaar is. Dat maakt dit probleem nog raarder? Vooral omdat het script aangeeft niet te kunnen lezenRataplan schreef op vrijdag 26 november 2004 @ 20:16:
Uhm, ben ik de enige die erover valt dat fat32 geen permissies op bestandniveau ondersteunt en dat cacls NTFS nodig heeft?
Ik zou die hele is_writable d'r uit slopen:
[...]
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
Nope, is_writable zegt dat er niet gelezen kan worden. Uit de door jou en je collegae zo warm aanbevolen usernotes op php.net haalde ik een bugreport dat (geloof ik) zegt dat de readonly-attribute nog wel 'ns writeonly genoemd wordt, of zoiets. Meer research mag de ts zelf doen, maar nogmaals: met fat32 zou ik die is_writable d'r uit slopen ipv een oplossing te verzinnen die uiteindelijk toch neerkomt opSpider.007 schreef op vrijdag 26 november 2004 @ 20:29:
[...]
Hmm.. je hebt inderdaad een goed punt; het valt mij nu pas op dat de TS inderdaad FAT32 gebruikt waar idd alles standaard voor iedereen leesbaar is. Dat maakt dit probleem nog raarder? Vooral omdat het script aangeeft niet te kunnen lezen
code:
1
| if(true) |
[ Voor 10% gewijzigd door Rataplan op 26-11-2004 20:55 ]
Journalism is printing what someone else does not want printed; everything else is public relations.
Ik blijf erbij dat je verkeerd bezig bent als je (ook al is het maar om te testen) een webserver draait op FAT32.
En ook nog eens op je systeempartitie. Nou ja, misschien kan dat ook niet anders als je maar 1 partitie hebt.
Niet alleen omdat het ontbreken van elke vorm van bestandsbeveiliging risicos inhoudt voor je systeem, maar ook omdat je zo nooit een goede afspiegeling krijgt van je operationele situatie.
90% van scripts voor servers gaan er vanuit dat je enige mate van file security hebt, of dat nou *nix is (chmod) of NTFS/IIS ACLs.
Als je dit script dus wil testen onder XP zul je ook met een filesystem met een rechtenstructuur moeten werken.
Ik heb het even getest onder XP pro (sp2) met IIS 5.1 + NTFS en daar werkt het zonder jouw foutmeldingen wel goed op.
Zelfs apache2 doet het gewoon prima op XP maar wel met NTFS dus.
convert c: /fs:ntfs uitvoeren
En ook nog eens op je systeempartitie. Nou ja, misschien kan dat ook niet anders als je maar 1 partitie hebt.
Niet alleen omdat het ontbreken van elke vorm van bestandsbeveiliging risicos inhoudt voor je systeem, maar ook omdat je zo nooit een goede afspiegeling krijgt van je operationele situatie.
90% van scripts voor servers gaan er vanuit dat je enige mate van file security hebt, of dat nou *nix is (chmod) of NTFS/IIS ACLs.
Als je dit script dus wil testen onder XP zul je ook met een filesystem met een rechtenstructuur moeten werken.
Ik heb het even getest onder XP pro (sp2) met IIS 5.1 + NTFS en daar werkt het zonder jouw foutmeldingen wel goed op.
Zelfs apache2 doet het gewoon prima op XP maar wel met NTFS dus.
convert c: /fs:ntfs uitvoeren
[ Voor 10% gewijzigd door alt-92 op 27-11-2004 17:41 ]
ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device
Pagina: 1