PDA

View Full Version : اجرای فایل های php در اوبونتو



هزاره سوم
شنبه 18 مرداد 1393, 17:59 عصر
سلام
من تازگی اوبونتو نصب کردم و هنوز فایل php ای توی محیط لوکال اجرا نگرفتم
(در محیط ویندوز مشکلی نبود)
lamp رو نصب کردم
طی سرچی که انجام دادم باید فایل ها رو توی آدرس /var/www کپی کنیم و وقتی localhost/folder/index.php رو بزنیم فایل اجرا میشه
ولی وقتی میخوام پوشه فایل ها رو کپی کنم توی اون آدرس نمیشه.یعنی پیام میده میگه اجازه هچین کاری رو ندارین
میشه راهنمایی بفرمایین؟

مهرداد سیف زاده
شنبه 18 مرداد 1393, 18:07 عصر
برای چنین کاری استاندارد هست که حالت usermode رو در apache فعال کنید
با این کار دیگر نیازی ریختن فایل در پوشه www نیست بلکه هر کاربر که به سیستم لاگین میکنه در پوشه home خودش یه پوشه به اسم public_html خواهد داشت که برای دسترسی به وب سرور هست
به هر حال شما برای این که کارت راه بیفته مراحل زیر روی یکی یکی انجام بده:
۱- در پوشه home یه پوشه به اسم host درست کن
۲- بر روی پوشه کلیک راست کن و یک shortcut از روش بساز
۳- ترمینال رو باز کن و دستور زیر رو در اون وارد کن و رمز عبور root رو بزن(همون رمز عبوری هست که باهاش لاگین کردی)
sudo nautilus
۴-حالا برو shortcut پوشه host رو بردار و در پوشه www کپی کن(البته cut و past انجام بده)
۵-ترمینال رو بازکن و دستور زیر رو وارد کن
sudo chmod 777 /var/www

محمد فدوی
شنبه 18 مرداد 1393, 18:12 عصر
برای اجرای یک برنامه php تحت سرور داخلی php یه فایل ایجاد کن (مثلا با نام first.php):


<?php
echo 'Hello, World!';


بعد با دستور زیر روی سرور و IP مورد نظرت اجراش کن. مثلا روی پورت 8888 لوکال:



php -S localhost:8888 first.php


حالا میتونی توی مرورگر وب آدرس localhost:8888 رو بزنی و نتیجه رو ببینی!
پیشنهاد میکنم توی محیط لینوکس (و حتی ویندوز) برای برنامه نویسی PHP از Netbeans (https://netbeans.org/) یا PhpStorm (http://www.jetbrains.com/phpstorm/) استفاده کنید. Netbeans مجانی هستش ولی خب باید از تحریم عبور کنید! PhpStorm هم دارای نسخه مجانی هستش که چیزی کم و کسر نداره!

موفق باشی.

هزاره سوم
شنبه 18 مرداد 1393, 18:29 عصر
برای چنین کاری استاندارد هست که حالت usermode رو در apache فعال کنید
با این کار دیگر نیازی ریختن فایل در پوشه www نیست بلکه هر کاربر که به سیستم لاگین میکنه در پوشه home خودش یه پوشه به اسم public_html خواهد داشت که برای دسترسی به وب سرور هست
به هر حال شما برای این که کارت راه بیفته مراحل زیر روی یکی یکی انجام بده:
۱- در پوشه home یه پوشه به اسم host درست کن
۲- بر روی پوشه کلیک راست کن و یک shortcut از روش بساز
۳- ترمینال رو باز کن و دستور زیر رو در اون وارد کن و رمز عبور root رو بزن(همون رمز عبوری هست که باهاش لاگین کردی)
sudo nautilus
۴-حالا برو shortcut پوشه host رو بردار و در پوشه www کپی کن(البته cut و past انجام بده)
۵-ترمینال رو بازکن و دستور زیر رو وارد کن
sudo chmod 777 /var/www

زمانی که دستور گفته شده رو توی ترمینال زدم این ارور اومد
عکس :
122109

هزاره سوم
شنبه 18 مرداد 1393, 18:34 عصر
برای اجرای یک برنامه php تحت سرور داخلی php یه فایل ایجاد کن (مثلا با نام first.php):


<?php
echo 'Hello, World!';


بعد با دستور زیر روی سرور و IP مورد نظرت اجراش کن. مثلا روی پورت 8888 لوکال:



php -S localhost:8888 first.php


حالا میتونی توی مرورگر وب آدرس localhost:8888 رو بزنی و نتیجه رو ببینی!
پیشنهاد میکنم توی محیط لینوکس (و حتی ویندوز) برای برنامه نویسی PHP از Netbeans (https://netbeans.org/) یا PhpStorm (http://www.jetbrains.com/phpstorm/) استفاده کنید. Netbeans مجانی هستش ولی خب باید از تحریم عبور کنید! PhpStorm هم دارای نسخه مجانی هستش که چیزی کم و کسر نداره!

موفق باشی.

نمیدونم کاری رو که گفتید درست انجام دادم یا نه
ولی اررو داد
به عکس نگاه کنید!
122110

hamedarian2009
شنبه 18 مرداد 1393, 19:02 عصر
توی ترمینال لینوکس ازین دستور استفاده کنید

sudo chown user
به جای user نام کاربری که ساختین رو قرار بدین و بعد پوشه www رو درگ کنید داخل ترمینال بعد user قرار بدین و enter رو بزنید دیگه این کاربر میتونه در این پوشه فایل ایجاد کند

هزاره سوم
شنبه 18 مرداد 1393, 19:10 عصر
توی ترمینال لینوکس ازین دستور استفاده کنید

sudo chown user
به جای user نام کاربری که ساختین رو قرار بدین و بعد پوشه www رو درگ کنید داخل ترمینال بعد user قرار بدین و enter رو بزنید دیگه این کاربر میتونه در این پوشه فایل ایجاد کند

کاری رو که گفتین انجام دادم و اکی شد
حالا توی مرورگر این آدرس رو زدم ولی ارور forbiden میده
آدرس دهیم اشتباه بود؟

Unique
یک شنبه 19 مرداد 1393, 14:01 عصر
من اینجا (http://www.geekfarsi.com/%D9%85%D9%87%D8%A7%D8%AC%D8%B1%D8%AA-%D8%A8%D9%87-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-%D9%86%D8%B5%D8%A8-%D9%88-%D8%B1%D8%A7%D9%87-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C-%D8%B3%D8%B1%D9%88%DB%8C/134) طریقه نصب apache و php و mysql را توضیح دادم و اگه شما آپاچی را درست نصب کرده باشین با ایجاد هر فایل php توی var/www/ براحتی میشه با آدرس http://localhost بهش دسترسی پیدا کرد ! اگه هم توی کپی مشکل داری از دستور sudo قبل از دستور cp استفاده کنید. forbidden هم احتمالا برای این میگیری که indexes را روی apache به صورت پیش فرض بستند و شاید index.php به صورت پیش فرض روی apache ست نشده !

توجه کن که نصب و پیکربندی apache و php نیازمند کمی تجربه و دانش ابتدایی هست! من شاید ۱۰۰۰ بار این کار را کردم اما روی production server قطعا میدم به یک system admin انجام بده !! نه اینکه بلد نیستم به خاطر اینکه باید جوابگو باشم و ترجیح میدم جوابگوی کدنویسی باشم.

وقتی که به تازگی اومده بودم روی لینوکس و با دستورات آشنایی کمی داشتم توی ذوقم میخورد ! اما با ممارست و پیگیری مشکلات حل شد و حالا نه به دلیل اولی که اومدم روی لینوکس بلکه به دلیل کیفیت و stability و راحتی که لینوکس داره اصلا فکر ویندوز را هم نمیکنم.