คำถามติดแท็ก apache-2.2

เซิร์ฟเวอร์ Apache HTTP เวอร์ชัน 2.2 เมื่อถามคำถามเกี่ยวกับ virtualhost โปรดรวมเอาท์พุทของคำสั่งต่อไปนี้: "apache2ctl -S" (หรือ "httpd -S" ขึ้นอยู่กับระบบปฏิบัติการของคุณ)

6
ไฟล์ / โฟลเดอร์เว็บไซต์ของฉันควรได้รับการอนุญาตบนเว็บเซิร์ฟเวอร์ Linux?
นี่เป็นคำถามที่ยอมรับได้เกี่ยวกับการอนุญาตไฟล์ในเว็บเซิร์ฟเวอร์ Linux ฉันมีเว็บเซิร์ฟเวอร์ Linux ที่ใช้ Apache2 ซึ่งโฮสต์เว็บไซต์หลายแห่ง แต่ละเว็บไซต์มีโฟลเดอร์ของตัวเองใน / var / www / /var/www/contoso.com/ /var/www/contoso.net/ /var/www/fabrikam.com/ ไดเรกทอรีฐาน / var / www / เป็นของ root: root Apache ทำงานเป็น www-data: www-data เว็บไซต์ Fabrikam ดูแลโดยสองนักพัฒนาคืออลิซและบ๊อบ ทั้งเว็บไซต์ Contoso ได้รับการดูแลโดยนักพัฒนาซอฟต์แวร์หนึ่งคน เว็บไซต์ทั้งหมดอนุญาตให้ผู้ใช้อัปโหลดภาพ หากเว็บไซต์ถูกบุกรุกผลกระทบควรมี จำกัด มากที่สุด ฉันต้องการทราบวิธีที่ดีที่สุดในการตั้งค่าการอนุญาตเพื่อให้ Apache สามารถให้บริการเนื้อหาเว็บไซต์นั้นปลอดภัยจากการโจมตีและนักพัฒนายังคงสามารถเปลี่ยนแปลงได้ หนึ่งในเว็บไซต์มีโครงสร้างดังนี้: /var/www/fabrikam.com /cache /modules /styles /uploads /index.php ควรตั้งค่าการอนุญาตในไดเรกทอรีและไฟล์เหล่านี้อย่างไร? …

5
เปลี่ยนเส้นทางเปลี่ยน URL หรือเปลี่ยนเส้นทาง HTTP เป็น HTTPS ใน Apache - ทุกสิ่งที่คุณอยากรู้เกี่ยวกับกฎ Mod_Rewrite แต่กลัวที่จะถาม
นี่เป็นคำถามที่ยอมรับได้เกี่ยวกับ mod_rewrite ของ Apache การเปลี่ยน URL คำขอหรือเปลี่ยนเส้นทางผู้ใช้ไปยัง URL อื่นที่ไม่ใช่ URL ที่พวกเขาร้องขอ แต่เดิมนั้นทำได้โดยใช้ mod_rewrite ซึ่งรวมถึงสิ่งต่าง ๆ เช่น: การเปลี่ยน HTTP เป็น HTTPS (หรือวิธีอื่น ๆ ) การเปลี่ยนการร้องขอไปยังหน้าที่ไม่มีอยู่ในการแทนที่ใหม่อีกต่อไป การปรับเปลี่ยนรูปแบบ URL (เช่น? id = 3433 เป็น / id / 3433) นำเสนอหน้าเว็บที่แตกต่างจากเบราว์เซอร์โดยอ้างอิงจากสิ่งที่เป็นไปได้ภายใต้แสงจันทร์และดวงอาทิตย์ ทุกสิ่งที่คุณต้องการยุ่งกับ URL ทุกสิ่งที่คุณอยากรู้เกี่ยวกับกฎ Mod_Rewrite แต่ไม่กล้าถาม! ฉันจะเป็นผู้เชี่ยวชาญในการเขียนกฎ mod_rewrite ได้อย่างไร รูปแบบและโครงสร้างพื้นฐานของกฎ mod_rewrite คืออะไร ฉันต้องมีรูปแบบ / รสชาติของการแสดงออกปกติอะไรบ้าง? …

4
ฉันจะเลือก Apache MPM ที่ใช้ได้อย่างไร
นี่เป็นคำถามที่ยอมรับได้เกี่ยวกับการเลือก Apache httpd MPM ที่ถูกต้อง ฉันสับสนเล็กน้อยระหว่าง MPM ที่แตกต่างกันที่เสนอโดย Apache - 'ผู้ปฏิบัติงาน', 'เหตุการณ์', 'prefork' ฯลฯ อะไรคือความแตกต่างที่สำคัญระหว่างพวกเขาและฉันจะตัดสินใจได้อย่างไรว่าจะเลือกอันไหนดีที่สุดสำหรับการปรับใช้ที่กำหนด

12
การเปลี่ยนเส้นทาง http ไปที่ https หรือไม่
ฉันเพิ่งติดตั้งใบรับรอง SSL บนเซิร์ฟเวอร์ของฉัน จากนั้นตั้งค่าการเปลี่ยนเส้นทางสำหรับการรับส่งข้อมูลทั้งหมดในโดเมนของฉันบนพอร์ต 80 เพื่อเปลี่ยนเส้นทางไปยังพอร์ต 443 กล่าวอีกนัยหนึ่งhttp://example.comปริมาณการใช้งานทั้งหมดของฉันถูกเปลี่ยนเส้นทางไปยังhttps://example.comหน้าเว็บเวอร์ชันที่เหมาะสม การเปลี่ยนเส้นทางเสร็จสิ้นในไฟล์ Apache Virtual Hosts ของฉันด้วยสิ่งนี้ ... RewriteEngine on ReWriteCond %{SERVER_PORT} !^443$ RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L] คำถามของฉันคือมีข้อ จำกัด ในการใช้ SSL หรือไม่ เนื่องจากนี่ไม่ใช่ 301 Redirect ฉันจะสูญเสียการเชื่อมโยง / การจัดอันดับในเครื่องมือค้นหาโดยการเปลี่ยนเป็นลิงก์httpsหรือไม่ ฉันขอขอบคุณความช่วยเหลือ ฉันต้องการตั้งค่า SSL บนเซิร์ฟเวอร์เพียงเพื่อการฝึกฝนและในที่สุดฉันก็ตัดสินใจทำคืนนี้ ดูเหมือนว่าจะทำงานได้ดีจนถึงตอนนี้ แต่ฉันไม่แน่ใจว่าควรใช้สิ่งนี้ในทุกหน้าหรือไม่ เว็บไซต์ของฉันไม่ใช่อีคอมเมิร์ซและไม่จัดการกับข้อมูลที่ละเอียดอ่อน มันมีไว้สำหรับรูปลักษณ์และความตื่นเต้นของการติดตั้งเพื่อการเรียนรู้ ปัญหาที่อัปเดตแล้ว Bing สร้างภาพหน้าจอนี้จากเว็บไซต์ของฉันอย่างน่าประหลาดใจในตอนนี้เมื่อใช้ HTTPS ทุกที่ ...
247 apache-2.2  ssl  http  https 

4
อะไรคือวิธีที่ดีที่สุดในการจัดการการอนุญาตสำหรับผู้ใช้ www-data ของ Apache 2 ใน / var / www
มีใครมีวิธีที่ดีในการจัดการไฟล์/var/wwwหรือไม่ เรากำลังใช้ชื่อตามโฮสต์เสมือนและใช้ Apache 2 เป็นwww ข้อมูล เรามีผู้ใช้ & รูทปกติสองคน ดังนั้นเมื่อล้อเล่นกับไฟล์/var/wwwแทนที่จะต้อง ... chown -R www-data:www-data ... ตลอดเวลามีวิธีจัดการที่ดีอย่างไร คำถามเพิ่มเติม: วิธีการที่ไม่ยอมใครง่ายๆแล้วคุณจะไปได้รับอนุญาต? อันนี้มีปัญหาเสมอในสภาพแวดล้อมการพัฒนาความร่วมมือ

14
ค้นหาว่าผู้ใช้ Apache กำลังทำงานอะไร
ฉันต้องการรักษาความปลอดภัยไดเรกทอรีอัปโหลดไฟล์บนเซิร์ฟเวอร์ของฉันตามที่อธิบายไว้อย่างสวยงามที่นี่ แต่ฉันมีปัญหาหนึ่งก่อนที่ฉันจะสามารถทำตามคำแนะนำเหล่านี้ได้ ฉันไม่ทราบว่าผู้ใช้ Apache กำลังทำงานอะไร ฉันพบข้อเสนอแนะที่คุณสามารถดูได้ใน httpd.conf และจะมีบรรทัด "ผู้ใช้" แต่ไม่มีบรรทัดดังกล่าวในไฟล์ httpd.conf ของฉันดังนั้นฉันเดาว่า Apache กำลังทำงานเป็นผู้ใช้เริ่มต้น ฉันไม่สามารถรู้ได้ว่ามันคืออะไร ดังนั้นคำถามของฉันคือ: ฉันจะทราบได้อย่างไรว่าผู้ใช้เริ่มต้นคืออะไร ฉันจะต้องเปลี่ยนผู้ใช้เริ่มต้น หากคำตอบคือใช่และฉันเปลี่ยนผู้ใช้เริ่มต้นด้วยการแก้ไข httpd.conf มีแนวโน้มที่จะทำให้เกิดข้อผิดพลาดหรือไม่ ขอบคุณ!
212 apache-2.2 

4
คำสั่งเพื่อตรวจสอบความถูกต้องของไฟล์กำหนดค่าเซิร์ฟเวอร์ Apache
ฉันกำลังมองหาคำสั่งที่ตรวจสอบความถูกต้องของไฟล์กำหนดค่าในเซิร์ฟเวอร์ apache ทั้ง distros Debian และ RHEL ฉันต้องทำก่อนที่จะรีสตาร์ทจึงจะไม่มีการหยุดทำงาน

5
มีโดเมน SSL หลายโดเมนในที่อยู่ IP เดียวกันและพอร์ตเดียวกัน
นี่เป็นคำถามที่ยอมรับได้เกี่ยวกับการโฮสต์เว็บไซต์ SSL หลายเว็บไซต์ใน IP เดียวกัน ฉันอยู่ภายใต้การแสดงผลว่าใบรับรอง SSL แต่ละรายการจำเป็นต้องมีที่อยู่ IP / พอร์ตเฉพาะของตัวเอง แต่คำตอบของคำถามก่อนหน้านี้ที่ฉันโพสต์นั้นขัดแย้งกับการอ้างสิทธิ์นี้ การใช้ข้อมูลจากคำถามนั้นทำให้ฉันสามารถรับใบรับรอง SSL หลายใบเพื่อทำงานบนที่อยู่ IP เดียวกันและที่พอร์ต 443 ฉันสับสนอย่างมากว่าทำไมงานนี้ถึงได้รับข้อสันนิษฐานข้างต้น เซิร์ฟเวอร์เดียวกันต้องการ IP / พอร์ตของตัวเอง ฉันสงสัยว่าฉันทำอะไรผิด วิธีนี้สามารถใช้ใบรับรอง SSL หลายใบได้หรือไม่?

2
Apache“ ต้องได้รับทุกสิ่งที่ได้รับ” ทำอะไรจริงๆ?
ฉันเพิ่งอัปเดตเซิร์ฟเวอร์ Apache เป็น Apache / 2.4.6 ซึ่งทำงานภายใต้ Ubuntu 13.04 ฉันเคยมีไฟล์ vhost ที่มีต่อไปนี้: <Directory "/home/john/development/foobar/web"> AllowOverride All </Directory> แต่เมื่อฉันวิ่งที่ฉันได้รับ "ต้องห้ามคุณไม่ได้รับอนุญาตให้เข้าถึง /" หลังจากทำ googling เล็กน้อยฉันพบว่าการทำให้ไซต์ของฉันทำงานอีกครั้งฉันต้องเพิ่มบรรทัดต่อไปนี้ "ต้องได้รับอนุญาตทั้งหมด" เพื่อให้ vhost ของฉันมีลักษณะดังนี้: <Directory "/home/john/development/foobar/web"> AllowOverride All Require all granted </Directory> ฉันต้องการทราบว่านี่คือ "ปลอดภัย" และไม่นำปัญหาด้านความปลอดภัยใด ๆ ฉันอ่านในหน้าของ Apache ว่า "เลียนแบบการทำงานของคำสั่ง 'อนุญาตจากทุกคน' และ 'ปฏิเสธจากทุกคน' ก่อนหน้านี้ผู้ให้บริการนี้สามารถใช้หนึ่งในสองอาร์กิวเมนต์ที่ 'อนุญาต' หรือ 'ถูกปฏิเสธ' …

8
อะไร จำกัด จำนวนการเชื่อมต่อสูงสุดบนเซิร์ฟเวอร์ Linux
พารามิเตอร์เคอร์เนลหรือการตั้งค่าอื่นใดควบคุมจำนวนสูงสุดของซ็อกเก็ต TCP ที่สามารถเปิดได้บนเซิร์ฟเวอร์ Linux อะไรคือข้อดีของการอนุญาตให้มีการเชื่อมต่อมากขึ้น? ฉันสังเกตในขณะที่โหลดทดสอบเซิร์ฟเวอร์ Apache ด้วยabว่ามันค่อนข้างง่ายที่จะเปิดการเชื่อมต่อสูงสุดบนเซิร์ฟเวอร์ หากคุณไม่ใช้ตัวเลือก ab's -k ซึ่งอนุญาตให้นำการเชื่อมต่อกลับมาใช้ใหม่และให้ส่งคำขอมากกว่า 10,000 คำขอจากนั้น Apache จะให้บริการคำขอ 11,000 รายการแรกแล้วหยุดพักเป็นเวลา 60 วินาที ดูที่เอาต์พุต netstat แสดงการเชื่อมต่อ 11,000 การเชื่อมต่อในสถานะ TIME_WAIT เห็นได้ชัดว่านี่เป็นเรื่องปกติ การเชื่อมต่อจะถูกเก็บไว้เปิดเริ่มต้นของ 60 วินาทีแม้หลังจากที่ลูกค้าจะทำกับพวกเขาสำหรับเหตุผล TCP ความน่าเชื่อถือ ดูเหมือนว่านี่จะเป็นวิธีที่ง่ายในการใช้เซิร์ฟเวอร์ DoS และฉันสงสัยว่าการปรับจูนและการป้องกันตามปกติเป็นอย่างไร นี่คือผลการทดสอบของฉัน: # ab -c 5 -n 50000 http://localhost/ This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 …


6
เป็นไปได้หรือไม่ที่จะสร้างคีย์ RSA โดยไม่มีวลีรหัสผ่าน?
ฉันทำงานกับ Apache2 และ Passenger สำหรับโครงการ Rails ฉันต้องการสร้างใบรับรอง SSL ที่ลงชื่อด้วยตนเองเพื่อวัตถุประสงค์ในการทดสอบ sudo openssl rsa -des3 -in server.key -out server.key.new เมื่อฉันป้อนคำสั่งดังกล่าวจะกล่าวว่า writing RSA key Enter PEM pass phrase: ถ้าฉันไม่ป้อน pass phrse, im ได้รับข้อผิดพลาดด้านล่าง unable to write key 3079317228:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:869:Yo u must type in 4 to 1024 characters 3079317228:error:0906406D:PEM routines:PEM_def_callback:problems getting passwor d:pem_lib.c:111: …

11
การจัดการกับการโจมตี HTTP w00tw00t
ฉันมีเซิร์ฟเวอร์ที่มี apache และฉันเพิ่งติดตั้ง mod_security2 เพราะฉันถูกโจมตีมากจากสิ่งนี้: รุ่น apache ของฉันคือ apache v2.2.3 และฉันใช้ mod_security2.c นี่คือรายการจากบันทึกข้อผิดพลาด: [Wed Mar 24 02:35:41 2010] [error] [client 88.191.109.38] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:) [Wed Mar 24 02:47:31 2010] [error] [client 202.75.211.90] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): …

6
พร็อกซีข้อผิดพลาด 502“ เหตุผล: เกิดข้อผิดพลาดในการอ่านจากเซิร์ฟเวอร์ระยะไกล” พร้อม Apache 2.2.3 (Debian) mod_proxy และ Jetty 6.1.18
Apache กำลังรับคำขอที่พอร์ต: 80 และส่งไปยัง Jetty ที่พอร์ต: 8080 The proxy server received an invalid response from an upstream server The proxy server could not handle the request GET /. ภาวะที่กลืนไม่เข้าคายไม่ออกของฉัน:ทุกอย่างทำงานได้ตามปกติ (การร้องขออย่างรวดเร็วไม่กี่วินาทีหรือการร้องขอความยาวไม่กี่สิบวินาทีมีการประมวลผลok ) ปัญหาเกิดขึ้นเมื่อการประมวลผลคำขอใช้เวลานาน (ไม่กี่นาที) หากฉันส่งคำขอโดยตรงไปยังท่าเทียบเรือที่พอร์ต: 8080 คำขอจะได้รับการดำเนินการตกลง ดังนั้นปัญหาที่เกิดขึ้นคือมีแนวโน้มที่จะนั่งที่ไหนสักแห่งระหว่าง Apache และท่าเทียบเรือที่ฉันใช้mod_proxy วิธีแก้ปัญหานี้ ฉันได้ลองใช้ "เทคนิค" บางอย่างที่เกี่ยวข้องกับการตั้งค่า KeepAlive โดยไม่มีโชค นี่คือการกำหนดค่าปัจจุบันของฉันคำแนะนำใด ๆ #keepalive Off ## …
80 apache-2.2  jetty 

11
ฉันจะป้องกัน apache จากการให้บริการไดเรกทอรี. git ได้อย่างไร
ฉันเริ่มใช้ git เพื่อปรับใช้เว็บไซต์เพื่อทดสอบ ฉันจะป้องกัน apache จากการแสดงเนื้อหาไดเรกทอรี. git ได้อย่างไร ฉันเหนื่อย <Directorymatch "^/.*/\.svn/"> Order deny,allow Deny from all </Directorymatch> ไม่ประสบความสำเร็จ ฉันรู้ว่าฉันสามารถสร้างไฟล์. htaccess ในแต่ละไดเรกทอรี. git และปฏิเสธการเข้าถึง แต่ฉันต้องการบางสิ่งที่ฉันสามารถใส่ลงในไฟล์กำหนดค่าหลักที่ทำให้เป็นสากลในทุกเว็บไซต์
74 apache-2.2  git 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.