আমি কীভাবে আমার ব্যবহারকারীর ডিরেক্টরিটি আবার ওয়েব ভাগ করে নেওয়ার জন্য কাজ করব?


26

সিংহ এবং একটি ওয়েবসাইটে আমার ওয়েব ডিরেক্টরি ভাগ করা ছিল http://localhost/~user, যেখানে userআমার ব্যবহারকারী ডিরেক্টরি রয়েছে। আমি যখন মাউন্টেন সিংহকে আপগ্রেড করেছি, ওয়েব ভাগ করে নেওয়া (অ্যাপাচি) সক্ষম থাকবে এবং আমি লোকালহোস্টে গিয়ে "এটি কাজ করে!" পেতে পারি ডিফল্ট ওয়েব পৃষ্ঠা, তবে আমি আর আমার ব্যবহারকারীর পৃষ্ঠাতে অ্যাক্সেস করতে পারি না। ত্রুটিটি হ'ল

নিষিদ্ধ

আপনার কাছে এই সার্ভারে / ~ ব্যবহারকারী / অ্যাক্সেস করার অনুমতি নেই।

আমি কীভাবে আমার ব্যবহারকারীর ডিরেক্টরিগুলির ওয়েব পৃষ্ঠাটি সক্ষম করব?

উত্তর:


18

এখানে আপনি কীভাবে টার্মিনালটি ব্যবহার করে কমান্ড লাইন দিয়ে ওয়েব পৃষ্ঠাটি সক্ষম করতে পারবেন।

প্রথমে এটি অনুলিপি করুন এবং এটি টার্মিনালে পেস্ট করুন। enterএটি চালানোর জন্য আপনাকে পেস্ট করার পরে চাপতে হতে পারে । এটি আপনার পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে কারণ এটি আপনার সিস্টেম ডিরেক্টরিতে একটি ফাইল যুক্ত করছে।

USER_DIR=$(basename $(echo ~))
sudo bash -c "cat > /etc/apache2/users/$USER_DIR.conf" <<TEXT
<Directory "/Users/$USER_DIR/Sites">
     Options Indexes MultiViews
     AllowOverride None
     Order allow,deny
     Allow from all
</Directory>
TEXT

তারপরে ওয়েব সার্ভারটি পুনঃসূচনা করতে এই কমান্ডটি চালান:

sudo apachectl restart

দুঃখিত, আমার ভুল, আপনারও এটি কনফ ফাইলের নামের জন্য প্রয়োজন। তবুও,
base

1
আমি এর চেয়ে কিছুটা আলাদা করেছি। ধন্যবাদ ইনডিভ তথ্যের জন্য যা আমাকে আমার সেটআপের জন্য একটি কাস্টম সমাধান তৈরি করতে সহায়তা করেছিল। আমি "ডিরেক্টরি" ব্লকটি আপনাকে যুক্ত করেছিলাম /etc/apache2/extra/httpd-userdir.conf "" $ USER_DIR "এর জায়গায়" * "দিয়ে রাখতে হবে। এটি "সাইটস" ডিরেক্টরি থাকা সমস্ত ব্যবহারকারীর জন্য ব্যবহারকারী ডিরেক্টরি সক্ষম করে।
জেসন

1

আমার FollowSymLinksনিম্নলিখিত হিসাবে আমি যোগ করতে হয়েছিল /etc/apache2/users/username.conf:

<Directory "/Users/username/Sites/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>

( usernameআপনার আসল ব্যবহারকারীর নামটি প্রতিস্থাপন করতে হবে)


1

এখানে একটি লাইন টার্মিনাল কমান্ডটি ম্যাকোস-এর অন্তর্নির্মিত অ্যাপাচি সার্ভারকে সক্ষম করবে এবং আপনাকে আপনার ব্যবহারকারী ফোল্ডারে সাইট ডিরেক্টরি ব্যবহার করার অনুমতি দেবে। এটি এই লেখার (মোজভে) ম্যাকোজের সর্বশেষতম সংস্করণের সাথে সামঞ্জস্যপূর্ণ এবং সিয়েরা এবং উচ্চ সিয়েরার সাথে কাজ করার জন্যও পরীক্ষা করা হয়েছে। আমার সন্দেহ হয় এটি অন্যান্য সংস্করণগুলির সাথেও কাজ করবে — এটি ভবিষ্যত-প্রমাণ পদ্ধতিতে লেখার জন্য আমি যথাসাধ্য চেষ্টা করেছি।

mkdir ~/Sites ; sudo bash -c "printf '<Directory \"/Users/`whoami`/Sites/\">\n\tAddLanguage en .en\n\tAllowOverride All\n\tOptions Indexes MultiViews FollowSymLinks\n\tRequire all granted\n</Directory>' > /etc/apache2/users/`whoami`.conf ; echo 'AddDefaultCharset utf-8' >> /etc/apache2/httpd.conf ; sed -i '' '/LoadModule userdir_module libexec\/apache2\/mod_userdir.so/s/^#*//g' /etc/apache2/httpd.conf ; sed -i '' '/LoadModule php[0-9]_module libexec\/apache2\/libphp[0-9].so/s/^#*//g' /etc/apache2/httpd.conf ; sed -i '' '/Include \/private\/etc\/apache2\/extra\/httpd-userdir.conf/s/^#*//g' /etc/apache2/httpd.conf ; sed -i '' '/Include \/private\/etc\/apache2\/users\/\*.conf/s/^#*//g' /etc/apache2/extra/httpd-userdir.conf ; apachectl start"

† ভাল, এটি প্রযুক্তিগতভাবে একটি লাইন, এমনকি যদি এটি সত্যই দীর্ঘ হয় ...


0

Https://apple.stackexchange.com/a/57555/9058 দেখুন , মূলত আপনাকে ম্যানুয়ালি প্রতি ব্যবহারকারী ব্যবহারকারীর ওয়েব ভাগ করতে সক্ষম করতে হবে (টার্মিনাল.অ্যাপ সহ)।


0

মাউন্টেন লায়ন আপনার ব্যবহারকারী ডিরেক্টরিতে ওয়েব অ্যাক্সেস দেয় এমন কনফিগারেশন ফাইলটি সরিয়ে দেয়। কনফিগারেশন ফাইল রয়েছে /etc/apache2/users/। অনুপস্থিত একটি user.conf, যেখানে ব্যবহারকারী আপনার সংক্ষিপ্ত ব্যবহারকারীর নাম।

আপনি যদি কমান্ড লাইনের সাথে গলগল করতে না চান, আপনার অ্যাপ্লিকেশনটির জন্য একটি কনফিগারেশন ফাইল তৈরি করতে আপনি এখানে চালাতে পারেন এমন একটি অ্যাপ্লস্ক্রিপ্ট। এটি আপনার পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে কারণ এটি সিস্টেম-স্তরীয় ডিরেক্টরিতে ফাইলটি তৈরি করতে হবে এবং উন্নততর সুবিধাগুলির প্রয়োজন।

আপনার অ্যাপ্লিকেশন ফোল্ডারে বা লঞ্চপ্যাডে খুলুন Other > Applescript Editor। নীচের স্ক্রিপ্টটি অনুলিপি করুন এবং এটি অ্যাপ্লিকেশন সম্পাদকের পাঠ্য অঞ্চলে আটকান। তারপরে রান বাটনে ক্লিক করুন।

set userHome to (short user name of (system info))
set configFile to "/etc/apache2/users/" & userHome & ".conf"
set configFileContents to "<Directory \"/Users/" & userHome & "/Sites/\">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>"

do shell script "echo '" & configFileContents & "' > " & configFile with administrator privileges
do shell script "/usr/sbin/apachectl restart" with administrator privileges

স্ক্রিপ্টটি শেষ হয়ে গেলে, আপনার ব্যবহারকারী-স্তরের ওয়েব পৃষ্ঠায় অ্যাক্সেস করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.